class ProductIntegrateTest(jduint.JdTest): """商品一览页面和商品详情页面的集成测试""" csv_file_path_test_data = 'thumbnail_image_test_data.csv' data_list = function.read_csv_file(csv_file_path_test_data) def image_navigate_verify(self, query, top, item): Thumbnail(self.driver).navigate_to_product_page(query, top, item) def thumbnail_image_src_verify(self, item): return Thumbnail(self.driver).thumbnail_image_src(item) def test_image_navigate1(self): """商品图片对比测试""" for data in self.data_list: query = data[0] top = data[1] item = int(data[2]) Thumbnail(self.driver).jingdong_thumbnail(query) t_src = self.thumbnail_image_src_verify(item) print("商品一览页面的链接图片:" + t_src) self.image_navigate_verify(query, top, item) p_src = Product(self.driver).get_image_n1_src() print("产品详情页的展示图片:" + p_src) print(t_src[-1:30]) self.assertTrue(t_src[-1:30] == p_src[-1:30]) function.insert_img(self.driver, query + "_image_navigate_test_result.jpg")
def test_search2(self): """双字节搜索测试""" data_list = function.read_csv_file(self.csv_file_path_test_data) for data in data_list: if data[0] == "DoubleByte": query = data[1] self.search_result_verify(query) po = HomePage(self.driver) self.assertEqual(po.search_result(), "\"" + query + "\"") function.insert_img(self.driver, "Chinese_search_" + query + ".jpg")
def test_search5(self): """没有搜索结果""" data_list = function.read_csv_file(self.csv_file_path_test_data) for data in data_list: if data[0] == "NoResult": query = data[1] self.search_result_verify(query) po = HomePage(self.driver) print(po.no_search_result()) self.assertIn("抱歉,没有找到与", po.no_search_result()) function.insert_img(self.driver, "Chinese_search_" + query + ".jpg")
def test_search3(self): """拼写修正测试""" data_list = function.read_csv_file(self.csv_file_path_test_data) for data in data_list: if data[0] == "Correct": query = data[1] self.search_result_verify(query) po = HomePage(self.driver) print(po.check_error()) self.assertIn("我们为您显示", po.check_error()) function.insert_img(self.driver, "Chinese_search_" + query + ".jpg")
def test_search4(self): """拼写建议测试""" data_list = function.read_csv_file(self.csv_file_path_test_data) for data in data_list: if data[0] == "Suggestion": query = data[1] self.search_result_verify(query) po = HomePage(self.driver) self.assertEqual("\"" + query + "\"", po.search_result()) # self.assertIn("您是不是想找", po.check_error()) # self.assertIn("您是不是想找“lenovo”的相关商品?点击查看", po.check_error()) function.insert_img(self.driver, "Chinese_search_" + query + ".jpg")
class PriceSortTest(jduint.JdTest): """商品按价格排序测试""" data_list = function.read_csv_file('thumbnail_sort_test_data.csv') def price_sort_verify(self, query, top): Thumbnail(self.driver).thumbnail_price_sort(query, top) def price_desc_verify(self, query, top): Thumbnail(self.driver).thumbnail_price_desc(query, top) def rating_sort_verify(self, query, top): Thumbnail(self.driver).thumbnail_rating_sort(query, top) def test_price_sort1(self): """价格由底到高测试""" for data in self.data_list: self.price_sort_verify(data[0], data[1]) po = Thumbnail(self.driver) self.assertEqual(30, po.first_load_product_number()) print("首次加载页面展示30个产品图片,(需求变更为60)") self.assertTrue(po.is_sorted_prices_list()) function.insert_img(self.driver, "price_sort_page.jpg") def test_price_sort2(self): """价格由高到底测试""" for data in self.data_list: self.price_desc_verify(data[0], data[1]) po = Thumbnail(self.driver) self.assertTrue(po.is_desc_prices_list()) function.insert_img(self.driver, data[0]+"price_desc_page.jpg") def test_rating_sort(self): """评论数由高到底测试""" for data in self.data_list: self.rating_sort_verify(data[0], data[1]) po = Thumbnail(self.driver) self.assertTrue(po.is_sort_ratings_list()) function.insert_img(self.driver, data[0]+"rating_sort_page.jpg")