Parcourir la source

ajout code de base

Axel S il y a 1 an
Parent
commit
19ee5d96d4

+ 16 - 0
Resources/Common.robot

@@ -0,0 +1,16 @@
+*** Settings ***
+Library    SeleniumLibrary
+
+*** Keywords ***
+
+Démarrer Test
+    [Documentation]     Keyword permettant de débuter chaque test (ouverture du navigateur, maximiser la fenetre etc...)
+    [Arguments]    ${navigateur}=chrome
+    Set Selenium Implicit Wait   5
+    Open Browser    https://practice.expandtesting.com/notes/app/    ${navigateur}
+    Maximize Browser Window
+    Log    Navigateur utilisé: ${navigateur}
+
+
+Terminer Test
+    Close Browser

+ 24 - 0
Resources/Page Object/PageAccueil.resource

@@ -0,0 +1,24 @@
+*** Settings ***
+Library    SeleniumLibrary
+Library       XML
+
+*** Variables ***
+${LOGIN_BUTTON_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div[1]/div[1]/a[1]
+${CREATE_ACCOUNT_BUTTON_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div[1]/div[1]/a[2]
+
+*** Keywords ***
+
+Valider l'affichage de la page "Accueil" - non connecté
+    ${page_url} =    Get Location
+    Should Be Equal As Strings    ${page_url}    https://practice.expandtesting.com/notes/app/
+    Wait Until Element Is Visible    ${LOGIN_BUTTON_LOCATOR}
+    #Element Should Exist     ${LOGIN_BUTTON_LOCATOR}
+    #Element Should Exist    ${CREATE_ACCOUNT_BUTTON_LOCATOR}
+
+Cliquer sur "Login"
+
+    Click Element    ${LOGIN_BUTTON_LOCATOR}
+
+Cliquer sur "Create an account"
+    Click Element    ${CREATE_ACCOUNT_BUTTON_LOCATOR}
+        

+ 39 - 0
Resources/Page Object/PageCreateAccount.resource

@@ -0,0 +1,39 @@
+*** Settings ***
+Library    SeleniumLibrary
+Library       XML
+
+*** Variables ***
+${CREATEACCOUNT_HEADER_LOCATOR}=   css=h1 
+${EMAILADDRESS_TEXTBOX_LOCATOR}=    id=email 
+${PASSWORD_TEXTBOX_LOCATOR}=     id=password 
+${NAME_TEXTBOX_LOCATOR}=     id=name
+${CONFIRMPASSWORD_TEXTBOX_LOCATOR}=     id=confirmPassword
+${REGISTER_BUTTON_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div/form/div[2]/button
+${LOGGIN_HERE_LINK_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div/p/a/span
+${CONFIRMATION_MESSAGE_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div/div[2]/b
+${LOGGIN_LINK_ACCOUNTCREATEDLOCATOR}=    xpath=//*[@id="root"]/div/div/div/div/div[2]/div/a
+
+*** Keywords ***
+
+Verifier l'affichage de la page "Create Account"
+    ${CreateAccount_Header_Text}=    Get Text    ${CREATEACCOUNT_HEADER_LOCATOR}
+    Should Be Equal As Strings    ${CreateAccount_Header_Text}    Register     ignore_case=true 
+Remplir le formulaire
+    [Arguments]    @{donnees_formulaire}
+    Input Text    ${EMAILADDRESS_TEXTBOX_LOCATOR}    ${donnees_formulaire}[0]
+    Input Text    ${PASSWORD_TEXTBOX_LOCATOR}    ${donnees_formulaire}[1]
+    Input Text    ${NAME_TEXTBOX_LOCATOR}    ${donnees_formulaire}[2]
+    Input Text   ${CONFIRMPASSWORD_TEXTBOX_LOCATOR}    ${donnees_formulaire}[3]
+
+Soumettre le formulaire 
+    Click Button    ${REGISTER_BUTTON_LOCATOR}
+
+Verifier la creation du compte
+    ${confirmation_message_text}=    Get Text    ${CONFIRMATION_MESSAGE_LOCATOR}
+    Should Be Equal As Strings    ${confirmation_message_text}    User account created successfully    ignore_case=true
+
+Acceder a la page loggin - compte créé
+    Click Element    ${LOGGIN_LINK_ACCOUNTCREATEDLOCATOR}
+
+Acceder a la page loggin - formulaire non rempli
+    Click Element    ${LOGGIN_HERE_LINK_LOCATOR}

+ 31 - 0
Resources/Page Object/PageLogin.resource

@@ -0,0 +1,31 @@
+*** Settings ***
+Library    SeleniumLibrary
+
+*** Variables ***
+${PAGE_LOGIN_HEADER_LOCATOR}=    css=h1
+${EMAIL_TEXTBOX_LOCATOR}=    id=email
+${PASSWORD_TEXTBOX_LOCATOR}=   id=password 
+${LOGIN_BUTTON_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div/form/div[2]/button
+${CREATE_ACCOUNT_LINK_LOCATOR}=    xpath=//*[@id="root"]/div/div/div/div/div[3]/a
+${FORGOT_PASSWORD_LINK_LOCATOR}=    id=forgotPasswordLink
+
+*** Keywords ***
+Vérifier l'affichage de la page "Login"
+    ${Page_login_header_text}=    Get Text    ${PAGE_LOGIN_HEADER_LOCATOR}
+    Should Be Equal As Strings    ${Page_login_header_text}    Login    ignore_case=true 
+
+Remplir le formulaire de login
+    [Arguments]    @{Donnees_Login}
+    Input Text    ${EMAIL_TEXTBOX_LOCATOR}    ${Donnees_Login}[0]
+    Input Text    ${PASSWORD_TEXTBOX_LOCATOR}    ${Donnees_Login}[1]
+
+Soumettre le formulaire de Login
+    Click Button    ${LOGIN_BUTTON_LOCATOR}
+
+Cliquer sur le lien "Create a free account"
+    Click Element    ${CREATE_ACCOUNT_LINK_LOCATOR}
+
+Cliquer sur le lien "Forgot Password"
+    Click Element    ${FORGOT_PASSWORD_LINK_LOCATOR}
+
+    

+ 17 - 0
Tests/MyNotes_Test_Ex1.robot

@@ -0,0 +1,17 @@
+***Settings**
+Resource     ../Resources/Common.robot
+Resource     ../Resources/Page Object/PageAccueil.resource
+Resource     ../Resources/Page Object/PageLogin.resource
+Resource     ../Resources/Page Object/PageCreateAccount.resource
+Resource    MyNotes_Test_Ex12.robot
+Test Setup    Common.Démarrer Test            
+Test Teardown    Common.Terminer Test
+Documentation    Ex1:Un utilisateur ayant créé un compte avec un email et un mot de passe doit pouvoir se connecter avec cet email et ce mot de passe. En cas d'échec d'authentification (email ou mot de passe incorrect), un message d'erreur est affiché
+
+
+*** Variables ***
+@{list}=    abdc@hhhh.com    123456    jean artin    123456
+*** Test Cases ***
+Ex1
+    MyNotes_Test_Ex12.Créer un compte utilisateur avec email
+    

+ 40 - 0
Tests/MyNotes_Test_Ex12.robot

@@ -0,0 +1,40 @@
+*** Settings ***
+Library    String   
+Resource     ../Resources/Common.robot
+Resource     ../Resources/Page Object/PageAccueil.resource
+Resource     ../Resources/Page Object/PageLogin.resource
+Resource     ../Resources/Page Object/PageCreateAccount.resource
+
+Test Setup    Common.Démarrer Test            
+Test Teardown    Common.Terminer Test
+Documentation    Ex12:L'utilisateur peut créer un compte avec email et password. Les champs à renseigner pour créer le compte: Email address, PAssword, Name, Confirm Password
+
+
+
+*** Variables ***
+
+@{VALEURS_FORMULAIRES_TOUT_OK}=    ""    1234567    jean hartin    1234567
+
+*** Test Cases ***
+Ex12-CT01
+    ${RANDOM_EMAIL}=    Create Random Email
+    ${VALEURS_FORMULAIRES_TOUT_OK}[0]=  Set Variable     ${RANDOM_EMAIL} 
+    Créer un compte utilisateur avec email    @{VALEURS_FORMULAIRES_TOUT_OK}
+
+
+*** Keywords ***
+Créer un compte utilisateur avec email
+    [Arguments]    @{valeurs_formulaire}
+    PageAccueil.Valider l'affichage de la page "Accueil" - non connecté
+    PageAccueil.Cliquer sur "Create an account"
+    PageCreateAccount.Verifier l'affichage de la page "Create Account"
+    PageCreateAccount.Remplir le formulaire    @{valeurs_formulaire}
+    PageCreateAccount.Soumettre le formulaire
+    PageCreateAccount.Verifier la creation du compte
+
+Create Random Email
+  ${date}  Get Time  year month day
+  ${srinked_date}  Set Variable  ${date[2]}${date[1]}${date[0]}
+  ${usr_prefix}=  Generate Random String  3  [LOWER]
+  ${random_user}=  Catenate  SEPARATOR=  ${usr_prefix}  robot  ${srinked_date}  @autotest.com
+  [Return]  ${random_user}