皇室战争成功背后是其独特协作方式的必然结果

有一个多月没有更新博客文章了,这段时间江边望海利用一些业余时间在做两件事情:1.开发CITS(中文名字叫巧克力任务跟踪系统);2.翻译一些国外的文章。

今天介绍一家公司——Supercell,芬兰的一家游戏公司。可能大家对他并不了解,如果我告诉你App store上炙手可热的部落冲突:皇室战争正是出自他们的团队,你可能就知道了。 继续阅读皇室战争成功背后是其独特协作方式的必然结果

测试的过去和现在

随着互联网和移动互联网的兴起,将测试界分割成一条非常明显的界限。我认为这个界限是2012年达到了顶点。在2012年之前,主要是手动测试为主。2012年之后由于自动化测试的兴起(以Selenium为代表,我专门研究了Selenium的发展史《Selenium——WEB功能测试领域的伟大创新》)国内测试人员普遍具备的能力是手动功能测试和使用LoadRunner和QTP做性能测试。

继续阅读测试的过去和现在

如何成为一个优秀的技术男

在江边望海心目中,技术男是一个带着神圣光芒的称号近乎于科学家。所以,技术男的要具备理性、冷静、俊朗、投入的特质。拒绝与自称屌丝的技术渣男为伍。那么如何成为一个优秀的技术男呢?江边望海认为可以从这几个方面进行提升:

继续阅读如何成为一个优秀的技术男

robot framework二维数组使用场景的实践

引子

有些时候可能会遇到这种场景:我们需要在一个robot framework测试用例中调取预先设置好的变量,进行测试。典型的就是准备了几组帐号和密码,需要每一组都尝试输入一下。那么,这种测试场景我们应该使用robot framework怎么编写测试用例呢。

继续阅读robot framework二维数组使用场景的实践

那些年测试踩过的坑

问题一:串行测试

想必很多测试团队不只是一个人。那么测试是如何分工的呢?无外乎两种吧。
1.根据项目进行分工,每个人负责一个项目;
2.根据功能模块进行分工,每个人负责一些功能模块。组内的测试成员每人负责一个功能。
很多产品功能内部是有很多的耦合性的,比如:先上架一个产品,在执行浏览、下单、支付等流程。

那么势必会遇到一个测试人员正在测试的时候,下一个测试请求就需要等待场景。

问题二:SVN合并

很多开发团队还在使用SVN,那么svn的合并问题是一个比较大的问题。比如:一个项目有A\B\C三个开发人员,分别向开发分支里提交代码,这时A正在开发某项功能,B则已经解决了某个BUG需要立即提测,犹豫SVN中混杂这AB的代码,造成需要等到A开发完成才提测的问题,如果不开发完则有可能上线的代码中包含A的半成品代码。

目前,Git基本能解决这种混杂的代码开发方式,江边望海正在团队中努力推进Git的普及。

问题三:程序的耦合性

对于大型的网站项目开发,一般为了提高并发,会将产品按照模块分解到不同的svn中,这样修改某个svn其他模块代码不受影响,也容易进行测试。但是有些项目所有的程序都在一个代码库,而且以来很多后端的接口和服务,造成测试的线拉的很长,测试起来非常的不容易。

问题四:为什么需要阶段性发布

阶段性发布虽然有助于产品的迭代稳定,但是阶段性发布也是以前就的软件开发的步骤,互联网公司的产品大多是基于B/S的,一个BUG或者一个漏洞都可能会造成用户的流失,如果按照阶段性发布的原则势必太过古板。

现在的持续集成大行其道也正式多数互联网公司提倡的,如果一个测试人员还在为别人没有按照阶段性发布恼火的时候,是应该考虑自己是否OUT了。当然,正常的产品迭代还是要遵守的,但是有持续集成别不相悖。

Selenium Grid的自动化测试环境搭建经验分享

引言

在Web应用自动化测试过程中,我们经常会遇到执行的用例过多,消耗时间太长的问题。对于团队推行的敏捷开发是不利的。Selenium Grid提供了比较完美的解决方案,可以在多台机器上分布式执行测试用例。

继续阅读Selenium Grid的自动化测试环境搭建经验分享