• 覆盖安装的话,缓存是会继续沿用的,即之前的状态有可能影响后面的自动化。比如登录了哪个账号之类的。

    从自动化尽量不要产生关联影响的角度,不覆盖安装会更好,或者覆盖安装后要清一下本地缓存。

  • 比较好奇,自动化的场景一般是从原有的回归用例里提取的,场景设计应该在整理回归用例的时候就做完了。如果回归用例的场景设计没做好,那就补充回归用例的场景好了,和自动化没太大关系。

    如果你说的是不知道哪些回归用例该自动化,可以考虑从优先级高到低排序,先做优先级高的。优先级定义就是如果线上出现用例对应场景不通过的情况,会造成多严重的故障。故障越严重,用例优先级越高。一般情况下,正常场景优先级是最高的,所以你现在这么做也没啥不对的。

  • 问题 1,社区有解决方案,善用搜索:

    问题 2,有个地方没看懂,测试机nodes上jenkins-agent安装成windows server,会出现python脚本无法启动浏览器问题,jenkins-agent直接双击运行则没有问题。 ,所以你可以运行和不可以运行,两个场景的区别是什么,可以详细说明下吗?

  • 现在用到了,重新学习,不知道从哪里入手了

    具体说下哪部分用到了要重新学习?这个部分目前自己水平大概到什么程度?这样具体一些好回答。

    不过按你前面回答,建议你可以出来走走,不一定跳槽,也可以参加一些沙龙之类的交流,扩大一下自己的视野。多了解更广阔的世界,了解其他人、其他公司,对减少迷茫也会有帮助。

    我自己第一家公司 2-3 年左右也是有点迷茫,跟着做完和落地一个自动化测试框架,觉得自己看到的终点已经到达了,看不到后面的风景,每天都在重复。直到来到社区,深入 appium,才知道自己只是井底之蛙,后面的风景多着呢。

  • 我之所以觉得是 gitlab 配置的问题的原因是,用 Jenkins 运行好像没有像运行 github+jenkins 那样有一个拉取代码的过程,虽然 github 应该会很快。

    把你全部日志贴上来,特别是最开始的 50 行?这个拉取代码过程应该都会有的,只是快慢不同而已。日志里都应该会有。

    另外,针对 chromedriver.exe 可能有多个的,删除后还是不行,可以试下改下代码,使用指定路径的 chromedriver 试试:

    self.driver = webdriver.Chrome('C:/Program Files (x86)/Google/Chrome/Application/chromedriver.exe')
    

    PS:多口问一句,你确认你电脑只装了一个 chrome 浏览器吧?

  • python 处理数据 at 2020年10月30日

    直接贴代码呗?这样才好根据具体代码给建议。

  • 建议先总结下自己工作中有什么瓶颈,有什么技能可以用上。然后去学这项技能。

    可以分享下你这 3 年的大致经历么,这么一上来就问,只能给类似毕业生的回答(学测试基础理论、学编程语言、学自动化),不一定合适你。

  • 如果从解决方案角度,换台电脑是最简单便捷的。

    如果要寻根究底,从你上面的替换法可以看出非手机端问题,应该是电脑端 adb 问题。建议基于 adb server 日志探究吧。怎么拉日志,可参考:https://www.jianshu.com/p/7fe3e3e286ba

  • python 处理数据 at 2020年10月30日

    个人思路:

    先通过 sql 取到所有素材:

    select 
    CONCAT(a.plan, '_', a.code) as key,  
    CONCAT(if(b.A1=1, 'A1|', ''), if(b.A2=1, 'A2|', ''), if(b.A1+C=1, 'A1+C|', ''), if(b.A1+D=1, 'A1+D|', '')) as value
    from 表1 as a left join 表2 as b 
    on a.plan_name = b.plan_name where a.plan_name = 'name2'`
    limit 1
    

    ,然后 value 处理下,去掉最后的|,再根据你的结构把 key、value 拼起来。

    如果要遍历所有 plan_name ,那前面加个去重获取全部 plan_name 的 sql ,然后用一个循环遍历 plan_name 就好。代码应该不会太复杂。

  • 好吧,大致看懂了。

    • 你可以排除 gitlab 这个原因了,gitlab 或者 git 都只管代码,不管环境。你现在的配置能保障 pycharm 拉到的代码和你 jenkins 拉到的代码一样,那这个部分的职责就完成了。

    • selenium 获取具体 webdriver 执行文件,默认是通过遍历环境变量里配置的路径实现的。从现象上看,chromedriver.exe 在你这台电脑有不止一个,而且版本不一样。可以所有盘都搜索一下,把多余的都扔到回收站,做到这台电脑只保留 1 个 chromedriver.exe 文件,然后再试试。

  • 怎么确定的?可以详细说下吗?

    提醒一下,不能认为用的同一台电脑就确定一样的哦。加载的环境变量和配置不一样,最终用到的版本也会不一样。jenkins 打开的 shell 本身就和我们在操作系统界面打开的有差异的,就算同一台电脑也有差异。

    PS:有点没看懂正文的内容和 jenkins 有啥关系,标题有提到 jenkins ,正文完全没提及。建议也详细说下到底 jenkins、gitlab 和 appium 在你这个环境下是怎么串起来的。

  • 建议另外开一个帖子,把你的具体情况和问题点说清楚吧?

  • 并行多少台设备?有试过换台电脑或者换台手机么?

  • 善用社区的搜索,给你举个例子:

  • 又要写明年的计划 at 2020年10月29日

    改变不了的困难点是什么?资源(人)?时间?
    看你的描述应该是这个团队的 leader ,这些应该是有足够的权限和能力去改变的。如果真的没有,可以找你的上级沟通下,如果上级支持,那你就会获得资源和时间;如果不支持,那你也没啥需要想的,说明维持现状就好了,只是你要想想自己再过几年的前途,继续保持现状是否合适了。

  • 今年校招的一些趋势 at 2020年10月24日

    比较好奇是到哪些学校校招的,这么多研究生来投测试开发?

    虽然也理解研究生在项目经验和学历上确实大多能直接吊打本科生,但这个比例也太出乎意料了。

  • android: content-desc
    iOS: accessibility-id
    这 2 个本身设计都是给残疾人读屏软件用的,基本不会有业务逻辑用到,可以放心加。只是基本这个是额外工作量了,建议可以让研发搞一些 hook 之类的给全部元素按指定规则直接加,一个个加太累了。

    参考 appium 官方文档:http://appium.io/docs/en/commands/element/find-elements/index.html#selector-strategies

  • 测试面试题目求解答 at 2020年10月23日

    给我我也只能想到这些,可能会稍微多一个,就是问下函数的使用场景是什么,确认下自己对 "好" 的理解是否符合这个场景的需要。

  • 裸辞的话不建议直接离职,未来不确定性太大了,说不定你的下家和这家也差不了多少。

    可以骑驴找马,先不离职,外面找到合适的再离职。

  • 主要是背景和项目案例要亮眼,那得亮到不看简历就能知道,业内有一定知名度的。这种比学历难多了。

  • 如果是 xmind ,最近滴滴不是刚开源了 agileTC 么?
    https://github.com/didi/AgileTC

    excel 就不大知道了。

  • 是不是有 sql 注入漏洞之类的?
    删表不一定要获得主机权限或者数据库连接权限,有 sql 执行能力就行。

  • 想先问一个问题,你们要分析的指标是啥,每个接口的请求响应时间,还是别的啥?看你的截图是响应时间百分比分布,图里内容已经反映出 95% 以上的请求响应时间在 2s 内了,但灰色线的那个请求明显比大部队慢很多,需要结合场景看是否需要优化了。不知道你想知道的是什么信息。

    如果是想看每个 url 的 90% 或者 95% 响应时间以及 tps ,应该要用另一个响应时间的报表,具体名字不大记得了,横轴是各种指标(最大响应时间、95% 响应时间、每分钟请求数等),纵轴是每个请求 sample。

    另外,Jmeter 有很多报表插件的,建议你在确定了自己想要的指标后,先看看有什么相关插件,找到最合适自己的。你现在用的这个插件感觉不是太适合,那条灰色线和其他数据差异太大,所以其他数据基本都看不准确了。

  • https://github.com/metersphere/metersphere
    我的锅,打漏了一个 s。。。

  • 又要写明年的计划 at 2020年10月20日

    个人想到 2 个点,供参考:

    • 教会更多人写简单的自动化用例,提高自己测试效率(赋能)?
    • 研究写起来更快更简单的自动化用例编写维护框架或平台,让用例产出量翻几倍(提效)?

    你说的这几个都是体力活,听起来一句话就是继续干去年干的活,确实太平庸了,没感觉到能力上的上升。

    从团队角度,没有上升的团队是很可怕的,做的事情只是 60 分及格,老板基本看不到(只会看到 80 分以上的),慢慢会觉得可有可无;团队氛围会很沉闷,看到 1 年后的自己和现在没啥差别,没啥动力;有追求的会走,没追求的会变成温水煮青蛙;而且最后真的要走的时候,这段履历面试时也容易被认为是原地踏步。