Exemple #1
0
class TestStock(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        # 获取浏览器驱动
        cls.driver = UtilsDriver.get_driver()
        cls.stock_page = StockProxy()

    @classmethod
    def tearDownClass(cls):
        UtilsDriver.quit_driver()

    def setUp(self):
        self.driver.get("http://localhost")

    # 新增库存
    @parameterized.expand(get_case_data(filename, "add_stock"))
    def test01_stock_add(self, supplier_name, model, price, number, msg):
        self.stock_page.go_add_stock(supplier_name, model, price, number)
        self.assertIn(msg, get_tip_msg())
        time.sleep(5)

    # 出库
    @parameterized.expand(get_case_data(filename, "out_stock"))
    def test02_out_stock(self, shippers, out_number, out_price, msg):
        self.stock_page.go_out_stock(shippers, out_number, out_price)
        self.assertIn(msg, get_tip_msg())
Exemple #2
0
class TestPubAritcle:

    def setup_class(self):
        # 1.打开浏览器
        self.driver = DriverUtils.get_mp_driver()
        # 创建首页业务层的对象
        self.home_proxy = HomeProxy()
        # 创建发布文章业务层的对象
        self.pub_ari_proxy = PubAriProxy()
        # 创建登录页面的业务层对象

    def setup_method(self):
        self.driver.get("http://ttmp.research.itcast.cn/")

    # 定义测试方法
    @allure.severity(allure.severity_level.BLOCKER)
    @pytest.mark.parametrize(("ari_title", "ari_context", "ari_channel", "expect"),
                             get_case_data("./data/mp/test_pub_ari_data.json"))
    def test_pub_ari(self, ari_title, ari_context, ari_channel, expect):
        # 2.组织测试数据
        # config.PUB_ARI_TITLE = ari_title.format(time.strftime("%H%M%S"))
        config.PUB_ARITCAL_TITLE = ari_title.format(time.strftime("%H%M%S"))
        print("发布文章标题{}".format(config.PUB_ARITCAL_TITLE))
        # 3.执行测试步骤
        self.home_proxy.to_pub_ari_page()
        self.pub_ari_proxy.test_pub_aritcal(config.PUB_ARITCAL_TITLE, ari_context, ari_channel)
        # 截图
        get_allure_png(self.driver,"发布文章")
        # 4.结果断言
        assert is_element_exist(self.driver, expect)

    # 5.关闭浏览器
    def teardown_class(self):
        DriverUtils.quit_mp_driver()
Exemple #3
0
class TestCategory(unittest.TestCase):
    # 类级别前置操作
    @classmethod
    def setUpClass(cls):
        # 获取浏览器驱动对象
        cls.driver = UtilsDriver.get_driver()
        cls.category_page = CategoryProxy()
    # 类级别后置操作
    @classmethod
    def tearDownClass(cls):
        UtilsDriver.quit_driver()
    # 方法级别前置操作
    def setUp(self):
        self.driver.get("http://localhost")


    # 新增分类
    @parameterized.expand(get_case_data(filename,"add_category"))
    def test01_add_cate(self,cate_name,brand_name,msg):
        # 添加分类
        self.category_page.go_add_cate(cate_name)
        self.assertIn(msg,get_tip_msg())
        # 添加品牌
        self.category_page.go_add_bran(brand_name)
        self.assertIn(msg,get_tip_msg())
class TestPubAritcle:
    def setup_class(self):
        # 打开新浏览器
        self.driver = DriverUtils.driver_get_mp()
        # 创建首页业务层对象
        self.home_proxy = HomeProxy()
        # 创建发布文章业务成的对象
        self.pub_ari_proxy = PubAriProxy()
        # 创建登录页面的业务层对象
        # self.login_proxy = LoginProxy()
    def setup_method(self):
        self.driver.get("http://ttmp.research.itcast.cn/")

    # 定义测试方法
    @pytest.mark.parametrize(
        ("title_ari", "context_ari", "channel_ari", "expect"),
        get_case_data("./data/mp/test_pub_ari_data.json"))
    def test_pub_ari(self, title_ari, context_ari, channel_ari, expect):
        # 组织测试数据
        config.PUB_ARITCAL_TITLE = title_ari.format(time.strftime("%H%M%S"))
        print(config.PUB_ARITCAL_TITLE)
        # 执行测试步骤
        self.home_proxy.to_pub_ari_page()
        self.pub_ari_proxy.test_pub_artcal(config.PUB_ARITCAL_TITLE,
                                           context_ari, channel_ari)
        get_allure_pne(self.driver, "发布文章")
        # 断言
        assert is_element_exist(self.driver, expect)

    def teardown_class(self):
        DriverUtils.driver_mp_quit()
class TestPubArticle:
    # 1.打开浏览器
    def setup_class(self):
        # 打开浏览器
        self.driver = DriverUtils.get_mp_driver()
        # 创建首页业务层的对象
        self.home_proxy = HomeProxy()
        # 创建发布文章业务层的对象
        self.pub_ari_proxy = PubAriProxy()
        # 创建登录页面的业务层对象
        # self.login_proxy = LoginProxy()

    #
    def setup_method(self):
        self.driver.get("http://ttmp.research.itcast.cn/")

    # 定义测试方法
    @pytest.mark.parametrize(
        ("ari_title", "ari_context", "ari_channel", "expect"),
        get_case_data("./data/mp/test_pub_ari_atl.json"))
    def test_pub_ari(self, ari_title, ari_context, ari_channel, expect):
        # 2.组织测试数据
        config.PubArticleName = ari_title.format(time.strftime("%H%M%S"))
        # 3.执行测试步骤
        self.home_proxy.to_pub_air_tab()
        self.pub_ari_proxy.test_pub_aritcal(config.PubArticleName, ari_context,
                                            ari_channel)
        # 4.结果断言
        assert is_element_exist(self.driver, expect)
        # HomeHandle().cilck_context_tab()

    """
    不使用参数化的方法
    def test_pub_ari(self):
    # 2.组织测试数据
    ari_title = "BJ23_TESTNB_{}".format(time.strftime("%H%M%S"))
    ari_context = "我不想学测试,要秃头的"
    ari_channel = "软件测试"
    # # 执行登录
    # self.login_proxy.test_mp_login("13012345678", "246810")
    # 3.执行测试步骤
    self.home_proxy.to_pub_air_tab()
    self.pub_ari_proxy.test_pub_aritcal(ari_title, ari_context, ari_channel)
    # 4.结果断言
    assert is_element_exist(self.driver, "新增文章成功")
    不使用参数化的方法
    """

    # 5.关闭浏览器
    def teardown_class(self):
        DriverUtils.quit_mp_driver()
Exemple #6
0
class TestPubArticle:
    # 2. 定义初始化方法
    def setup_class(self):
        # 2.1 实例化浏览器驱动对象
        self.driver = DriverUtils.get_mp_driver()
        # 2.2 实例化需调用的业务方法所在类的对象
        self.home_proxy = HomeProxy()
        self.pub_ari_proxy = PubAriProxy()

    def setup_method(self):
        self.driver.get("http://ttmp.research.itcast.cn")

    # 3. 定义测试类
    @allure.severity(allure.severity_level.BLOCKER)
    @pytest.mark.parametrize(("ari_title", "ari_context", "ari_channel_name", "expect"),
                             get_case_data("./data/mp/test_pub_ari_data.json"))
    def test_ari_publish(self, ari_title, ari_context, ari_channel_name, expect):
        # 3.1 定义测试数据
        # title = "test{}".format(time.strftime("%Y%m%d%H%M%S"))
        # context = "testtesttest测试测试测试"
        # channel_name = '测试开发'
        # 3.2 调用业务方法形成完整的业务
        config.PUB_ARITCAL_TITLE = ari_title.format(time.strftime("%Y%m%d%H%M%S"))
        time.sleep(3)
        self.home_proxy.to_pub_ari_page()
        time.sleep(3)
        self.pub_ari_proxy.test_publish_ari(config.PUB_ARITCAL_TITLE, ari_context, ari_channel_name)

        # 截图
        get_allure_png(self.driver, "发布文章")

        # 断言
        assert is_element_exist(self.driver, expect)
        # 点击内容管理
        # HomeHandle().click_context_tab()

    # 4. 关闭浏览器驱动对象
    def teardown_class(self):
        DriverUtils.quit_mp_driver()
Exemple #7
0
class TestMpLogin:
    # 定义初始化方法
    def setup_class(self):
        # 获取驱动的对象
        self.driver = DriverUtils.get_mp_driver()
        # 创建好所需要调用业务方法所在的类的对象
        self.login_proxy = LoginProxy()
        self.home_proxy = HomeProxy()
        self.pub_proxy = PubAriProxy()

    # 恢复到原点
    def setup_method(self):
        self.driver.get("http://ttmp.research.itcast.cn/")

    # 定义测试方法
    @pytest.mark.parametrize(
        ("ari_title", "ari_context", "ari_channel", "expect"),
        get_case_data("./data/mp/test_pub_data.json"))
    def test_mp_pub(self, ari_title, ari_context, ari_channel, expect):
        # 定义测试数据
        # username = "******"
        # code = "246810"
        # # 调用业务方法形成完整业务操作
        # self.login_proxy.test_mp_login(username, code)
        # # 断言
        # assert is_element_exist(self.driver, "江苏传智播客")
        config.PUB_ARITCAL_TITLE = ari_title.format(
            time.strftime("%Y%m%d%H%S%M"))
        self.home_proxy.to_pub_ari_page()
        self.pub_proxy.to_pub_ari_tab(config.PUB_ARITCAL_TITLE, ari_context,
                                      ari_channel)
        assert is_element_exist(self.driver, expect)
        # HomeHandle().click_context_tab()

    # 定义销毁的方法
    def teardown_class(self):
        DriverUtils.quit_mp_driver()