![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java自动化测试
文章平均质量分 70
利用Java相关框架实现自动化测试
chuntian_tester
路漫漫其修远兮,吾将上下而求索。
展开
-
JVM调优
目录1.垃圾回收发生在哪里?2.对象在什么时候可以被回收?3.怎么判断对象是否可以被回收? 1.引用计数算法: 2.可达性分析算法:3.如何回收这些对象?4.GC算法: 1.标记-清楚算法: 2.复制算法: 3.标记-整理算法: 4.分代收集算法:5,按系统线程执行方式可分为2种回收方式: 1.串行收集:使用单线程处理垃圾回收 2.并行收集:......原创 2021-12-04 00:15:00 · 494 阅读 · 0 评论 -
JVM浅谈
JVM的作用: jvm承担了java字节码的分析和执行,同时也内置了内存的分配和管理机制,此机制降低了研发人员手动分配和回收内存时可能带来的内存泄漏和内存溢出风险,使我们能更专注与业务和逻辑的实现.JVM中的内存模型:1.堆内存(heap): 是jvm内存中最大一块内存空间,堆内存被所有线程共享,几乎所有的对象和数组都被分配到堆内存中;堆被划分为新生代和老年代,新生代又分为eden区和survivor区.java8为什......原创 2021-12-04 00:15:00 · 109 阅读 · 0 评论 -
mock技术
常用mock工具:charles,fiddler,moco,wiremock,browsermod-proxy,mitmproxy.1.moco:GitHub - dreamhead/moco: Easy Setup Stub ServerStub(桩)实现:moco.json文件内容:[ { "response" : { "text" : "Hello, Moco" } }, { "request......原创 2021-10-27 02:47:25 · 11519 阅读 · 0 评论 -
Appium实现app自动化测试
目录1.Appium设计2.Appium环境安装 1.JDK安装配置2.SDK安装 3.Appium desktop安装(appium server+appium inspector工具) 3.DesiredCapability(启动参数)设置4.Appium定位方法(appium中无css selector定位) 1.id定位 2.accessibility_id定位 3.class定位......原创 2021-10-15 00:07:52 · 26266 阅读 · 0 评论 -
frame,window,alert,文件上传切换操作总结
frame()driver.switch_to.frame()alert()driver.alert("文本")driver.switch_to.alert()window_handle()driver.switch_to.window(handle)原创 2021-10-14 00:48:14 · 15188 阅读 · 0 评论 -
cookie免登陆之java与python实现
public class cookieTest { public static WebDriver driver; @BeforeAll public static void initData() { ChromeOptions options = new ChromeOptions(); options.setExperimentalOption("excludeSwitches", new String[]{"enable-automation".原创 2021-10-13 21:07:47 · 15260 阅读 · 2 评论 -
selenium中如何调用js
selenium提供了一个调用js的api,方便我们在selenium脚本中调用js.复用浏览器:调试时使用浏览器的--remote-debugging-port功能,可以不用每次运行脚本都启动一次浏览器1.将chrome浏览器配置为环境变量2.关闭所有浏览器3.dos中输入命令:chorme --remote-debugging-port=92224.自动化脚本中添加:ChromeOptions options=new ChromeOptions();options.s原创 2021-10-17 19:22:02 · 16668 阅读 · 0 评论 -
Actions(鼠标事件)方法列表
Actions类是seleniumd对鼠标及键盘操作的封装,即为鼠标事件和键盘事件.常见操作包括:1.click-----单击鼠标左键2.context_click-----点击鼠标右键3.click_and_hold-----点击鼠标左键不松开4.double_click-----双击鼠标左键5.drag_and_drop-----拖拽某个元素到目标位置后松开6.move_to_element-----鼠标一定到某个元素7.release-----释放,即在某个元素位置松开原创 2021-10-18 10:43:42 · 15302 阅读 · 0 评论 -
显示等待与隐式等待的用法
显示等待当页面加载很慢时,推荐使用显示等待:等到需要操作的那个元素加载成功之后就直接操作这个元素,不需要等待其他元素的加载WebDriverWait wait = new WebDriverWait(driver, 10);wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("kw")));显式等待 使用ExpectedConditions类中自带方法, 可以进行显试等待的判断。显式等待可以自定义等待的条件,.原创 2021-10-12 00:15:00 · 20777 阅读 · 0 评论 -
自动化测试中xpath和css selector元素定位语法
除了常规的By(id,name,classname,linktext,partillinktext.tagname)外,常用的还有xpath和css selector定位,当然,id,name定位底层调用的还是css selector定位,Xpath定位1. /bookstore/book[1] 选择bookstore元素中所有的book元素中的第一个book元素2. /bookstore/book[last()] 选择bookstore元......原创 2021-10-11 13:02:25 · 15686 阅读 · 0 评论 -
Java线程安全
前段时间有测试一个后端对账单和话单采集服务,在测试过程中有涉及到数据库读写逻辑和并发的场景,所以结合经验针对系统技术架构设计了部分并发场景结合数据库读写时可能出现的一些问题的用例,也确实出现了一些测试环境容易忽视,线上环境确确实实可能出现的问题,当然最后还是得到了妥善的解决.下面说说后端测试应该考虑的一些线程安全和数据读写方面的问题.前提:测试环境的架构尽量向线上环境的架构靠拢,比如线上如果采用分布式集群,测试环境如果是单机,那么部分问题自然无法暴露,如果测试环境无足够资源模拟线上的几十台集群环境,那么原创 2021-10-10 17:24:43 · 22033 阅读 · 1 评论 -
Junit5结合Allure2生成漂亮的测试报告
Junit5在Junit4的基础上实现了许多新的功能,相对于Junit4,Junit5在自动测试实现上已经相当完善了;可以预见,在未来10年,java自动化测试领域将会是Junit5和TestNG双雄交替的局面了.allure2用户手册:Allure Framework1.进入junit5章节可知,maven项目中的pom.xml中需添加如下依赖才能使用allure2:<properties> <aspectj.version>1.8.10</aspect原创 2021-10-08 23:38:23 · 16799 阅读 · 0 评论