昨天晚上想了又想,发现是我太纠结要通用了。想着换一套接口也能用。
本身能力有限,却想着做出来要尽量通用,或者看到别人是怎么怎么样的,难免患得患失。
其实我现在应该尽量少的扩展,将已有的底层功能一一进行封装,然后再根据情况考虑别的事情。
准备回头去修改代码去了:)
如果公司对测试开放的权限很低就很麻烦。
不然可以去看看开发的实现的,看看数据库的表设计什么的。
一切有利于测试的东西,都可以去看看。
至于说学习,这个永远都很难拿到会议上来说,自己上周就是学习了。。。很多公司不得行。自己偷偷学习就好。
多谢。
我现在写了一部分解析测试用例的代码了。
我的 sign 比较复杂,需要用到实时产生的 timestamp、传入的 appkey、消息体 body 本身(或者 query string 排序)。
timestamp 可以作为 variable,但是 body(或者 query string 排序)就不好办了。
总感觉需要多次扫描测试用例,或者按照特定的顺序来读取测试用例。 —— 我是计算了函数后将结果替换回去,再来扫描的
反正就是特别不爽,感觉这个 sign 要特殊处理。
学 python 没有问题的。
现在做 web 自动化的,很多人都是学 python+webdriver。做安卓自动化的,可以用 python+appium。
另外你可以考虑再去研究下 RF+RAID。
当然了,我这种做法并不正规的,相反有点急功近利。。
关于如何掌握好基础,练好编程什么的,看看别人怎么说吧。
感觉应该是在已经有完整的自动化测试框架之后,再来做的平台。
能否再开文章,详细的讲讲测试用例是如何定义、保存和调用的吗?
多谢。
如果要做安卓的自动化测试,必须先了解一点安卓编程,一开始只要入门就可以了。不然你不容易理解 appium 里的一些基本概念。
我是在看《第一行代码》。
有一些基本概念了,再看 appium,这个在 TesterHome 有翻译的中文指南,可以照着学习。
python+selenium 是测试 web 的,不是测试安卓的。
并不是说要把 python 改写为 java。
只是我也刚学这个,这是我现在唯一看到,讲得清楚,又有源代码的项目。
所以有疑惑的时候就过来研究,看看你是怎么处理的:)
如果有 java 的开源代码可以学习当然更好了,目前还没找到。
准备仿造您的文章,自己再造一遍轮子。
不过我只会 java,看不太懂 python 代码。
现在暂时还卡在这篇文章这里的,最近每天晚上都会先打开这篇文章看看。
现在用例基本是按照你的这个模式来的,不过是写的 json。
现在我们接口的自动化已经做了一部分了,TestNG+reportNG+jenkins+testlink+restassured,不过是那种全靠写代码的。需要一个新的用例,就自己去加一个@Test。
现在想造一遍别人可能做过很多次的轮子。
加上测试用例的管理,然后加一个 web 来作为测试用例新增、修改、执行的后台。
太多纠结的地方了,太多需要权衡的地方了。稍稍考虑下灵活性,就会复杂很多倍。
关于测试全驱动我体会最深了,我经常开玩笑的说这个是新的 TDD,测试(人员)驱动开发(人员),有的时候甚至还要去驱动产品经理。
很多时候把一张老脸都刷遍了。
其实关键还是要领导的支持。
多谢。
能否指点一下呢,放在 main 里的优势,为什么要放在 main 里呢?我回头还要负责去和同事沟通。多谢啊。
其实这个问题就涉及到测试的分层了。
如果你们公司会做比较完整的单元测试,单元测试会去校验数据库,那么你主要关注接口规范就好,或者业务逻辑。
不然的话,所有的东西你都需要去关注。
我自己理解,测试一层一层的上来,你可以选择信任或者不信任下层的测试。
我们公司有同事在用,RIDE
这份需求可以作为学习的标杆了
确实,我现在写了一部分接口的代码后,也发现了这个问题。每个接口单独可用的用例很少,开发也不愿意修改看上去比较微小的问题。这个可能和公司有关,有的公司更注重接口的规范性(比如本身就会有对外的接口提供出去)。
我准备写完所有的接口再来看看怎么办,是否编写更复杂的用例(包含多个接口调用的)来覆盖业务流程。不过相信现在写的底层的都会有用的。
个人觉得 python 挺适合测试行业的,不过自己选择的 java(以前学过一段时间 c# 写测试工具),因为公司开发用的 java,想保持技术一致性。
最近几天一篇一篇的看思寒老师的文章,收获很多。也扫清了很多疑惑。
逐步的明确下来了我们将要采用的方案:jenkins+testng+rest-assured+testlink。
在一家类似国企的大公司温水煮了 N 年(N>=10),现在要重新开始定义自己的职业了。
以前每天都忙于加班,加班,加班,觉得自己把测试工作(也就是认真的点点点)做好,尽量多发现 bug 就足够了。
但是半年考核老大明确的说:你多发现几个 bug,还不如弄一下别的东西,比如想办法让开发进行单元测试(我们的开发不单元测试的)。。。
我也觉得如果出来会混不走,幸好虽然年老,但仍然觉得自己还想学习,不怕学习。。。
看了楼主的帖子,才发现自己也是犯了将接口测试用来测试功能的错误,还要回去整理初衷。
大概情况和你说的差不多,做过多年的业务测试,用过 c#,正在学 java。我也正在写一个自动化测试,很可能也会从 excel 中读取用例来执行。能否请教一下,你从 excel 中读取的用例,包含预期结果吗?这一块感觉很难写到 excel 中去。
不懂什么是 allure,其他的放一行看得眼晕,我给分成几行吧
git svn jenkins
httpclient mock testng reportng
maven springmvc mybatis spring
jmeter lr appium
核心语言应该是 java,做过性能测试,也做过自动化测试,编写过接口类的挡板,还会持续集成
既然是测试开发岗位而不是 web 开发岗位,那么我相信亮点肯定不会是 spring,spring 是你的最强项的可能性很小
同理,也不是自动化测试岗,也不是性能测试岗。。。
所以我猜,你的核心竞争力是 java 写得很好?
哈哈,我是纯属来搞笑的,不许生气
我觉得,没必要判断当前页面是否加载完成啊。
你自动化测试的目的是什么,是 UI 检查的话,检查你需要检查的 UI 就可以了。如果是业务逻辑的测试,有一些无关紧要的元素没有出现,或者没有加载完成也没有关系。
不管是手工测试还是自动化测试案例,必然有其关注的检查点,其他东西可以忽略过去。
最近两年看到很多这方面的讨论,应该说大部分的人对业务测试(或者功能测试、手工测试)是报悲观的态度的。
其实换一个角度来想这个问题,如果是开发人员在讨论自己的出路呢?
在国内很多开发也会觉得纯做开发没有前途,会考虑转架构什么的。
所以问题在于,行业对人员的要求越来越高,或者随着工作年限的越来越长,大家对自己的定位越来越高,要求越来越高。
而一般人的学习曲线是趋平的,所以才会有 3-5 年的测试工程师最好找工作的说法。
一旦工作超过 8 年,或者 10 年,不做突破,很难说比工作 5 年的人有太多的优势。
这个时候就必须要找一个突破口,比如说:我还会编程、我会做专项测试、我会做自动化测试
说白了就是需要一门门槛比较高的技能,来和其他人区分开。
where java 返回了两个,我觉得你可以尝试在 PATH 里,将 JDK 的路径放到前面去。
我最开始也是只加了 JAVA_HOME,但是没有将%JAVA_HOME%\bin 加到 PATH 里,并在 oracle 的那个前面,结果一直报错。