def test_search(self): #实例化分类页 cp = ClassifyPage(self.driver) #点击搜索框 cp.click(cp.search_locator) sleep(1) #获取搜索页面的大框框 sep = SearchPage(self.driver) frame = cp.find_element(sep.frame_locator) #找到热门搜索 elements = frame.find_elements(By.CLASS_NAME, 'android.widget.TextView') print(elements) text = "a" for i in range(len(elements)): if elements[i].text == "热门搜索": #点击热门搜索下的第一个商品 text = elements[i + 1].text elements[i + 1].click() sleep(2) break #断言 assert1 = sep.text(sep.goods_text_locator1) assert2 = sep.text(sep.goods_text_locator2) assert3 = sep.text(sep.goods_text_locator3) assert4 = sep.text(sep.goods_text_locator4) self.assertIn(text, assert1) self.assertIn(text, assert2) self.assertIn(text, assert3) self.assertIn(text, assert4)
class TestSearch(): def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver) def search_input(self): self.search_page.click()
def test_search(self): #实例化分类页 cp = ClassifyPage(self.driver) #点击搜索框 cp.click(cp.search_locator) sleep(1) #点击热门搜索商品 sp = SearchPage(self.driver) sp.tap(sp.hot_search_locator)
def init_cart(init_driver): login = LoginPage(init_driver) home = HomePage(init_driver) cart = SearchPage(init_driver) productDetail = ProductDetailPage(init_driver) orderConfirm = OrderPage(init_driver) cart = ShoppingCartPage(init_driver) search = SearchPage(init_driver) yield init_driver, login, home, cart, productDetail, orderConfirm, search time.sleep(1)
class TestSearch: def setup(self): self.search = SearchPage() def test_search(self): self.search.search('ui测试') assert 'UI测试' in self.search.page_source() def teardown(self): self.search.quit()
def test_search(self, arg): allure.attach('', '点击搜索框') self.category_page.click_search_box() allure.attach('', '输入搜索内容') self.search_page = SearchPage(self.driver) self.search_page.input_search_text(arg) allure.attach('', '开始搜索') self.search_page.click_search_for_button() allure.attach('', '检查是否跳转到搜索结果页,有截图') res = self.category_page.is_toast_exist('Comprehensive', True, '搜索结果页') assert res
class TestSearch(): def setup_class(self): self.driver = set_tear().setup('com.android.settings', '.MiuiSettings') self.search_page = SearchPage(self.driver) @pytest.mark.parametrize('result_data', data_with_key('data')) def test_search(self, result_data): self.search_page.search_wlan(result_data) def teardown_class(self): set_tear().teardown(self.driver)
class Test_SearchBase: def setup_calss(self): self.driver = get_driver('com.android.settings', '.Settings') # 写死的属性 self.search_obj = SearchPage(self.driver) # 实例化页面类 def teardown_calss(self): self.driver.quit() @allure.step(title="点击搜索按钮") # 应用在测试方法上方 @pytest.fixture(scope='class', autouse=True) def click_search(self): self.search_obj.click_search_btn() # 点击搜索按钮不需要加test @allure.step(title="输入数据") # 应用在测试方法上方 def test_search_text(self, search_data, search_value): self.search_obj.send_search_text(search_data) # 输入数据 assert search_value in self.search_obj.get_search_result() # 获取结果断言
class TestSearch: def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver) @pytest.mark.parametrize('content', readYaml("./data/text.yaml")["test001"]) def test_search001(self, content): # 点击显示 self.search_page.search_input_text(content) assert 1 @pytest.mark.parametrize("content", readYaml("./data/text.yaml")["test002"]) def test_search002(self, content): # 点击显示 self.search_page.search_input_text(content) assert 1 def teardown(self): self.driver.quit()
class TestSearch: def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver) @pytest.mark.parametrize("text", data_with_key("test_search1")) def test_search(self, text): self.search_page.click_search() self.search_page.input_content(text) self.search_page.get_screenshot("aaa") self.search_page.click_back_s() self.driver.keyevent(4)
class TestSearch: def setup(self): self.driver = get_driver() self.driver = SearchPage(self.driver) @pytest.mark.parametrize("contains", data_with_key("test_search_input")) def test_search_input(self, contains): self.driver.click_search() self.driver.input_message(contains) self.driver.click_back()
class TestSearch: def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver) @pytest.mark.parametrize("content", data_with_key("test_search")) def test_search(self, content): self.search_page.click_search() self.search_page.input_content(content) self.search_page.click_back()
def test_search_add_cart_random(self): '''在分类主页先搜索,在搜索结果中随机添加商品到购物车''' # 实例化首页page hp = HomePage(self.driver) hp.ele_classification() #实例化搜索page sp = SearchPage(self.driver) context = '芒果' sp.search_goods(context) #搜索商品 sp.click_search_result_add_cart() #随机添加搜索结果到购物车
class TestSearch: def setup(self): self.search_page = SearchPage(android_driver()) def teardown(self): self.search_page.driver.quit() del self.search_page @pytest.mark.parametrize('text', search_data['test_search']) def test_search(self, text): self.search_page.input_search_text(text) self.search_page.screen_shot() self.search_page.click_back()
class TestSearch(): def setup(self): self.driver = init_driver() self.SearchPage = SearchPage(self.driver) @pytest.mark.parametrize("keys", yml_key("search")) def test_search(self, keys): # 点击搜索框 self.SearchPage.click_search_box() # 输入搜索内容 self.SearchPage.send_search_text(keys) # 点击搜索 self.SearchPage.click_search()
class TestSearch: def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver) # @pytest.mark.parametrize("content", data_with_key("test_search")) def test_search(self): # 点击放大镜 self.search_page.click_search() # 输入文字 self.search_page.input_content('hello') # 点击返回 self.search_page.click_back()
def init_order(init_driver): login = LoginPage(init_driver) home = HomePage(init_driver) cart = SearchPage(init_driver) productDetail = ProductDetailPage(init_driver) orderConfirm = OrderPage(init_driver) cart = ShoppingCartPage(init_driver) search = SearchPage(init_driver) yield init_driver, login, home, cart, productDetail, orderConfirm, search init_driver.get_cookies() home.enter_cart() cart.empty_cart() time.sleep(1)
class TestSearch: def setup(self): self.driver = base_driver() self.search_page = SearchPage(self.driver) @pytest.mark.parametrize("args", param("test_search")) def test_search(self, args): content = args["search_text"] screenshot_name = args["screenshot_name"] # 点击放大镜 self.search_page.click_search() # 输入文字 self.search_page.input_content(content) # 截图 self.search_page.screenshot(screenshot_name) # 将截图上传到报告中 allure.attach.file(r"./screen/%s.png" % screenshot_name, screenshot_name, attachment_type=allure.attachment_type.PNG) # 点击返回 self.search_page.click_back()
class TestSearch: def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver) @pytest.mark.parametrize("content2",yml_with_file("search_data")["test_search"]) def test_search(self,content2): #点击放大镜 self.search_page.click_search() #输入文字 self.search_page.input_content(content2) #点击返回 self.search_page.click_back()
class TestSearch: def setup(self): self.search_page = SearchPage(android_driver()) def teardown(self): self.search_page.driver.quit() del self.search_page @allure.MASTER_HELPER.feature('测试用例:搜索') @pytest.mark.parametrize('text', data_with_key(search_data['test_search'])) def test_search(self, text): test_no = text['test_no'] search_text = text['text'] allure.MASTER_HELPER.description(test_no) allure.MASTER_HELPER.attach('输入数据', search_text) self.search_page.input_search_text(search_text) self.search_page.screen_shot() self.search_page.click_back()
def search(self): return SearchPage(self.driver)
class TestCategoryPage: def setup(self): self.driver = get_driver() self.category_page = CategoryPage(self.driver) self.category_page.switch_to_category_page() def teardown(self): self.driver.quit() @allure.step(title='测试:分类页的搜索功能') @pytest.mark.parametrize('arg', get_search_data()) def test_search(self, arg): allure.attach('', '点击搜索框') self.category_page.click_search_box() allure.attach('', '输入搜索内容') self.search_page = SearchPage(self.driver) self.search_page.input_search_text(arg) allure.attach('', '开始搜索') self.search_page.click_search_for_button() allure.attach('', '检查是否跳转到搜索结果页,有截图') res = self.category_page.is_toast_exist('Comprehensive', True, '搜索结果页') assert res @allure.step(title='测试:点击分类页的“消息中心”图标时,页面是否正确跳转') def test_message_center_button(self): allure.attach('', '点击消息中心') self.category_page.click_message_center_img() allure.attach('', '检查是否跳转到消息中心页,有截图') res = self.category_page.is_toast_exist('通知', True, '消息中心页') assert res @allure.step(title='测试:左侧商品类目标签能否正常切换') def test_toggle_category(self): allure.attach('', '点击服饰标签') self.category_page.click_clothes_tab() allure.attach('', '检查是否展示服饰类商品') assert self.category_page.is_toast_exist('牛仔裤') allure.attach('', '点击电脑标签') self.category_page.click_computer_tab() allure.attach('', '检查是否展示电脑类商品') assert self.category_page.is_toast_exist('一体机') allure.attach('', '点击家居标签') self.category_page.click_household_tab() allure.attach('', '检查是否展示家居类商品') assert self.category_page.is_toast_exist('保温杯') allure.attach('', '点击鞋类标签') self.category_page.click_shoes_tab() allure.attach('', '检查是否展示鞋类商品') assert self.category_page.is_toast_exist('休闲鞋') allure.attach('', '点击手机标签') self.category_page.click_cellphone_tab() allure.attach('', '检查是否展示手机类商品') assert self.category_page.is_toast_exist('游戏手机') @allure.step(title='测试:从分类页选购商品的业务流程') def test_buy_something(self): allure.attach('', '点击手机标签中的手机数码类目') self.category_page.click_cellphone_goods() allure.attach('', '选择荣耀畅玩6') self.goods_list_page = GoodsListPage(self.driver) self.goods_list_page.swipe_screen('up') self.goods_list_page.choose_goods() allure.attach('', '查看商品详情') self.goods_info_page = GoodsInfoPage(self.driver) self.goods_info_page.click_details_tab() allure.attach('', '查看评价') self.goods_info_page.click_comments_tab() allure.attach('', '返回商品购买页') self.goods_info_page.click_goods_tab() allure.attach('', '收藏商品') self.goods_info_page.click_collect_img() allure.attach('', '选择规格') self.goods_info_page.click_specification_button() allure.attach('', '选择全网通4G版') self.goods_info_page.click_version_4G_radio() allure.attach('', '数量加1') self.goods_info_page.click_plus_button() allure.attach('', '立即购买') self.goods_info_page.click_buy_now_button() allure.attach('', '选择收获地址') self.confirm_order_page = ConfirmOrderPage(self.driver) self.confirm_order_page.click_address_button() allure.attach('', '选择nero的地址') self.address_page = AddressPage(self.driver) self.address_page.click_address_of_nero_button() allure.attach('', '提交订单') self.confirm_order_page.click_submit_orders_button() res = self.category_page.is_toast_exist('支付方式', True, '立即支付页') assert res
def goto_search(self): self.find_and_click((MobileBy.ID,'com.xueqiu.android:id/action_search')) return SearchPage(self.driver)
def to_search(self): #todo: too slow self.find_element_and_click(self._search_locator) return SearchPage(self.driver)
def setup(self): self.driver = init_driver() self.search_page = SearchPage(self.driver)
def setup(self): self.search = SearchPage()
def setup(self): self.search_page = SearchPage(android_driver())
def to_search(self): self.find_element_and_click(self._search_locator) # 点击首页搜索框 return SearchPage(self.driver)
def setup_class(self): self.driver = set_tear().setup('com.android.settings', '.MiuiSettings') self.search_page = SearchPage(self.driver)
def test_search_po(self): search_page = SearchPage(self.driver) search_page.search("alibaba") assert search_page.get_current_price() > 10