conducteur et les données paramétrisation

conducteur et les données paramétrisation


Résumé:
paramétrées en utilisant
pytest.mark.parametrize () de référence transmises directement des
données de conduite
fichier externe: Utiliser yaml
paramètre de test acquises à partir d' un fichier externe
étape de test obtention d'un fichier externe


Utilisez paramétrés

@ pytest.mark.parametrize ( "search_words", [ ' jeu', "hhdddx"])
cas d'utilisation spécifiques:

from page.app import App


class TestDemo:

    def setup(self):
        self.main_page = App.start()

    @pytest.mark.dependency()
    def test_game_handle(self):
        '''点击首页的游戏手柄,进入游戏中心'''
        self.game_center = self.main_page.click_game_handle()

   # @pytest.mark.dependency(depends=["TestDemo::test_game_handle"])
    @pytest.mark.parametrize("keyword", ['游戏', "hhdddx"])
    def test_game_search(self, keyword):
        self.test_game_handle()
        '''点击游戏中心页右上角的搜索,进行搜索查询'''
        self.game_center.search(keyword)
        sleep(5)
        self.game_center.get_first_content(keyword)


    def test_password_login(self):
        '''从游戏中心-我的进入登录页面,进行登录'''
        self.test_game_handle()
        self.my_page = self.game_center.click_bottom_button_mine()
        self.mobile_login = self.my_page.click_no_login_content()
        self.password_login = self.mobile_login.switch_to_password_login()
        self.password_login.password_login()


    def teardown(self):

        sleep(20)
        App.quit()

Ici redémarre plusieurs fois APP, afin de ne pas redémarrer l'APP, n'est pas utilisé l'installation et le démontage, mais l'utilisation de setupclass

Axée sur les données

données paramétrées lire le fichier externe: utilisez YAML, la lecture JSON
étape de test de la lecture d' un fichier externe: moteur d'exécution personnalisé
assert étape de lecture d' un fichier externe: moteur d'exécution personnalisé
toute cas d'utilisation lit un fichier externe: créer dynamiquement des cas d'utilisation

données paramétrées lire le fichier externe:
Exemple: Utiliser le fichier de
1 installé le YAML
à l' aide des outils d'installation PyCharm

ordinateur windows - ouvert PyCharm établissement projet-cliquez sur le projet, plus-interprètes signe - Trouver PyYAML être installé dans la zone de recherche

Utilisez la commande pour installer, le package d'installation obtenu à partir de la source pypi
PIP3 installer PyYAML

Utilisez la commande à installer, utiliser une source domestique pour des paquets d'installation
PIP3 installer PyYAML -i http://pypi.douban.com/simple --trusted-hôte pypi.douban.com
pip l'utilisation de sources nationales pour télécharger le package d'installation: Utilisation PIP de sources nationales pour télécharger le package d'installation
YAML utilisation des didacticiels: Cliquez sur
2 Importer YAML
Importer YAML
search_data = yaml.salf_load (Open ( "search.yaml", "r"))
Imprimer (search_data)

from time import sleep

import pytest
import yaml

from page.app import App


class TestDemo:
    search_data = yaml.safe_load(open("search.yaml", "r"))

    def setup(self):
        self.main_page = App.start()

    @pytest.mark.dependency()
    def test_game_handle(self):
        '''点击首页的游戏手柄,进入游戏中心'''
        self.game_center = self.main_page.click_game_handle()

   # @pytest.mark.dependency(depends=["TestDemo::test_game_handle"])
    @pytest.mark.parametrize("keyword", search_data)
    def test_game_search(self, keyword):
        self.test_game_handle()
        '''点击游戏中心页右上角的搜索,进行搜索查询'''
        self.game_center.search(keyword)
        sleep(5)
        self.game_center.get_first_content(keyword)

fichier search.yaml

- ['游戏']
- [game]

Article de référence:

pip l'utilisation de sources nationales pour télécharger et installer des paquets ==: l' utilisation de pépin de sources nationales pour télécharger le package d'installation
YAML utilisation des didacticiels: Cliquez pour voir

Etape de test de la lecture d'un fichier externe


Article de référence:
Vidéo: Vidéo Cliquez sur le lien pour sauter
l' article:
Junit5 + YAML paramétrage facile et pilotées par les données, de sorte App automatisé test plus efficace (a) Frappez le saut
* Junit5 + YAML paramétrage facile et piloté par les données, automatisées permettent App les tests sont plus efficaces (deux)
Cliquez pour sauter

Publié 99 articles originaux · louange gagné 43 · vues 160 000 +

Je suppose que tu aimes

Origine blog.csdn.net/mayanyun2013/article/details/104611183
conseillé
Classement