基于 SELENIUM 的自动化测试架构(26)

发表于:2017-04-11来源:gitbook作者:凌俣Linty?点击数: 标签:selenium
# 与Java的TestNG 相反,先写期待值,再写实际值 self.assertEqual(expected_lang, actual_lang) def test_02_log_in (self) : driver = self.base_driver driver.get(self.base_url) sleep( 2 ) dr
# 与Java的TestNG 相反,先写期待值,再写实际值 self.assertEqual(expected_lang, actual_lang) def test_02_log_in(self): driver = self.base_driver driver.get(self.base_url) sleep(2) driver.find_element_by_id("account").send_keys("admin") driver.find_element_by_id("password").send_keys("123456") driver.find_element_by_id("submit").click() sleep(3) actual_url = driver.current_url expected_url = self.base_url + "sys/index.html" self.assertEqual(expected_url, actual_url)

2.2 使用 Page Object 设计模式

Page Object设计模式是Selenium自动化测试项目的最佳设计模式之一,强调测试、逻辑、数据和驱动相互分离。

Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class,其中包含页面中需要测试的元素(按钮,输入框,标题等),这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。当页面元素id变化时,只需要更改测试页Class中页面的属性即可。

它的好处如下:

原文转自:http://gitbook.cn/books/58e54b57cfcd6fa52dcef1d2/index.html

...