欢迎访问宙启技术站
智能推送

使用Python编写的自动化测试脚本示例

发布时间:2023-12-04 13:09:41

以下是一个使用Python编写的自动化测试脚本示例:

# 导入所需的模块
import unittest
from selenium import webdriver

# 定义一个测试类
class TestLoginPage(unittest.TestCase):
    
    # 在每个测试用例之前执行的操作
    def setUp(self):
        self.driver = webdriver.Chrome()
        self.driver.get('http://example.com/login')

    # 在每个测试用例之后执行的操作
    def tearDown(self):
        self.driver.quit()

    # 定义一个测试登录功能的方法
    def test_login(self):
        # 找到用户名和密码的输入框
        username_input = self.driver.find_element_by_id('username')
        password_input = self.driver.find_element_by_id('password')

        # 输入用户名和密码
        username_input.send_keys('test_user')
        password_input.send_keys('test_password')

        # 找到登录按钮并点击
        login_button = self.driver.find_element_by_id('login_button')
        login_button.click()

        # 验证登录成功后的页面
        welcome_message = self.driver.find_element_by_id('welcome_message').text
        self.assertEqual(welcome_message, 'Welcome, test_user!')

    # 定义一个测试注册功能的方法
    def test_register(self):
        # 找到注册页面的链接并点击
        register_link = self.driver.find_element_by_link_text('Register')
        register_link.click()

        # 找到注册表单的输入框
        username_input = self.driver.find_element_by_id('username')
        email_input = self.driver.find_element_by_id('email')
        password_input = self.driver.find_element_by_id('password')

        # 输入注册信息
        username_input.send_keys('test_user')
        email_input.send_keys('test_user@example.com')
        password_input.send_keys('test_password')

        # 找到注册按钮并点击
        register_button = self.driver.find_element_by_id('register_button')
        register_button.click()

        # 验证注册成功后的页面
        welcome_message = self.driver.find_element_by_id('welcome_message').text
        self.assertEqual(welcome_message, 'Welcome, test_user!')

# 运行测试
if __name__ == '__main__':
    unittest.main()

以上示例中,我们使用了unittest模块来组织测试用例。在setUp方法中,我们初始化了一个webdriver实例,并打开测试登录页面。在tearDown方法中,我们关闭了webdriver。对于每个测试用例,我们可以通过继承unittest.TestCase类来定义一个测试类,并在其中编写测试方法。

test_login方法中,我们找到用户名和密码的输入框,输入用户名和密码,然后找到登录按钮并点击。最后,我们通过断言来验证登录成功后的页面是否显示了正确的欢迎信息。

类似地,在test_register方法中,我们找到注册页面的链接并点击,然后输入注册信息,最后找到注册按钮并点击。再次通过断言来验证注册成功后的页面是否显示了正确的欢迎信息。

我们可以通过运行unittest.main()来执行测试脚本。执行后,unittest会自动运行每个测试方法,并输出测试结果。

通过这个示例,我们可以看到如何使用Python编写自动化测试脚本,并使用unittest模块来组织测试用例和断言验证。这样,我们可以更加高效地进行自动化测试,提高软件的质量和稳定性。