Question d'aujourd'hui
- moi.:Les tests simples peuvent être effectués manuellement,Pourquoi automatiser les tests
Professeur.:Principalement des tests de régression.C'est changé.bugAprès,Encore un test.De cette façon, il est plus économique d'utiliser des tests de régression que des tests manuels
https://blog.csdn.net/hanhanwanghahaLa fille au Trésor Votre attention est la bienvenue!
Bienvenue à Wechat public:Le journal de la fille au Trésor
Reproduction éventuelle,Veuillez indiquer la source(Si ce n'est pas indiqué,Le voleur doit être poursuivi.)
Ouvrir le simulateur
IncmdEntrez le Code:
adb shell dumpsys window | findstr mCurrentFocus
Le nom du paquet et le nom de l'interface peuvent être trouvés(Le nom de l'interface peut omettre le nom du paquet,Mais j'ai peur de manquer ce point,Généralement pas omis)
Par exemple, mon nom de sac:
com.google.android.apps.messaging
Nom de l'interface
.conversation.screen.ConversationActivity
or
com.google.android.apps.messaging.conversation.screen.ConversationActivity
Ouvre.appium,Accès au serveur,Cliquez sur la boîte de recherche,Interface d'entrée
Cliquez sur
Saisissez l'interface d'édition, Entrez le code dans la case pour connecter le simulateur
Les codes sont les suivants:
Note de code ci - dessous :
Article premier: Le nom de la plateforme ,Insensible à la casse,“Android”;“ios”
Article 2:Version de la plateforme, Peut ne pas écrire le numéro de version suivant
Article 3:Nom de l'appareil,Ne peut pas être vide (cmdAprès adb devicesC'est bon.)
Article 4: Nom du paquet d'application à ouvrir (Là - hautcmd Les ordres de )
Article 5: Nom de l'interface de l'application à ouvrir (Là - hautcmd Les ordres de )
Article 6:Nom de l'appareil
{
"platformName": "Android",
"platformVersion": "5.0",
"deviceName": "emulator-5554",
"appPackage": "com.google.android.apps.messaging",
"appActivity": "com.google.android.apps.messaging.ui.ConversationListActivity",
"udid": "emulator-5554"
}
N'oubliez pas de sauvegarder
Cliquez surStart Session,Pour accéder àappium Une interface automatisée pour , Le simulateur suit aussi automatiquement
Ensuite, nous allons voir la clé que nous allons appuyer xpathChemin, Cliquez sur la touche que je veux exécuter automatiquement ,InSelect ElementComme vous pouvez le voirxpathChemin.
Laissez les parenthèses du chemin ,Par exemple, le mien est
//android.widget.Button[@content-desc="Start chat"]
Ce qu'il faut
[@content-desc="Start chat"]
Mais mettez - le là.pycharm Il y aura des erreurs dans , Il faut donc changer les guillemets ( Cette auto - adaptation est )
Et le mettre pycahrm Danspython Le Code devrait être
driver.find_element_by_xpath("//*[@content-desc='Start chat']").click() #Cliquez sur l'événement
Code de combat supérieur
from appium import webdriver
import time
desired_caps=dict()
desired_caps['platformName']='Android'# Le nom de la plateforme ,Insensible à la casse,“Android”;“ios”
desired_caps['platformVersion']='5.0'#Version de la plateforme, Peut ne pas écrire le numéro de version suivant
desired_caps['deviceName']='emulator-5554'#Nom de l'appareil,Ne peut pas être vide
# desired_caps['appPackage']='com.google.android.apps.messaging' # Nom du paquet d'application à ouvrir
# desired_caps['appActivity']='.ui.ConversationListActivity'# Nom de l'interface de l'application à ouvrir
desired_caps['udid']='emulator-5554'# Identification unique de l'appareil connecté
driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)#Connexion appium Serveur
driver.start_activity("com.google.android.apps.messaging", "com.google.android.apps.messaging.ui.ConversationListActivity") #Nom du paquet( Le nom du sac est devant , Suivi du nom de l'interface )
time.sleep(3)
driver.find_element_by_xpath("//*[@content-desc='Conversation list']").click() #Cliquez sur l'événement
time.sleep(3)
driver.find_element_by_xpath("//*[@content-desc='Start chat']").click() #Cliquez sur l'événement
time.sleep(5)
driver.quit()
# Comment localiser un ensemble d'éléments , Par exemple, je vais ouvrir la troisième option de configuration
# driver.start_activity("com.android.settings",".Settings")
# A=driver.find_elements_by_class_name("android.widget.LinearLayout")
# A[6].click()
# time.sleep(5)
# driver.quit()
Par la suite,Monapp Pour pouvoir fonctionner automatiquement
Comme suit
https://blog.csdn.net/hanhanwanghaha Bienvenue à l'attention de cette personne super invincible et adorable canard , Si vous avez des questions, laissez un message privé ,Tu verras, tu reviendras!
La création n'est pas facile,Reproduction éventuelle,Veuillez indiquer la source