Katalon Recorder录制自动化测试脚本

1.在Chrome浏览器上安装Katalon Recorder插件

 

2.操作

 

3.点击导出后

4.PyCharm打开,运行加修改代码

 

 

5.代码示例:

复制代码

复制代码
 1 # -*- coding: utf-8 -*-
 2 from selenium import webdriver
 3 from selenium.webdriver.chrome.service import Service
 4 from selenium.webdriver.common.by import By
 5 from selenium.webdriver.common.keys import Keys
 6 from selenium.webdriver.support.ui import Select
 7 from selenium.common.exceptions import NoSuchElementException
 8 from selenium.common.exceptions import NoAlertPresentException
 9 import unittest, time, re
10 
11 class TestCase1(unittest.TestCase):
12     def setUp(self):
13         s = Service("chromedriver.exe")
14         self.driver = webdriver.Chrome(service=s)
15         self.driver.implicitly_wait(30)
16         self.base_url = "https://www.google.com/"
17         self.verificationErrors = []
18         self.accept_next_alert = True
19     
20     def test_case1(self):
21         driver = self.driver
22         driver.get("https://www.baidu.com/")
23         time.sleep(2)
24         driver.find_element(By.XPATH,"//form[@id='form']/span/input").click()
25         driver.find_element(By.ID,"kw").clear()
26         time.sleep(2)
27         driver.find_element(By.ID,"kw").send_keys(u"你好李焕英")
28         time.sleep(2)
29         driver.find_element(By.XPATH,"//form[@id='form']/span[2]/input").click()
30         time.sleep(2)
31         self.assertEqual(u"百度为您找到相关结果约49,800,000个",
32                          driver.find_element(By.XPATH,"//*[@id=\"tsn_inner\"]/div[2]/span").text)
33 
34     def is_element_present(self, how, what):
35         try: self.driver.find_element(by=how, value=what)
36         except NoSuchElementException as e: return False
37         return True
38     
39     def is_alert_present(self):
40         try: self.driver.switch_to_alert()
41         except NoAlertPresentException as e: return False
42         return True
43     
44     def close_alert_and_get_its_text(self):
45         try:
46             alert = self.driver.switch_to_alert()
47             alert_text = alert.text
48             if self.accept_next_alert:
49                 alert.accept()
50             else:
51                 alert.dismiss()
52             return alert_text
53         finally: self.accept_next_alert = True
54     
55     def tearDown(self):
56         self.driver.quit()
57         self.assertEqual([], self.verificationErrors)
58 
59 if __name__ == "__main__":
60     unittest.main()
复制代码

 

 
复制代码

 

 

 

 

 

 

 

 

posted @   ゞ苏幕遮  阅读(572)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示