3分钟阅读时间 (604字)

开源学生计划:使用BDD Gherkin和Codeception改进Joomla! CMS测试

GSoC: Improved Joomla! CMS tests using BDD  Gherkin and Codeception

大家好!如何使用Gherkin和Codeception让Joomla! CMS测试更好?BDD(行为驱动开发)在其最广泛的意义上关于沟通和将软件视为具有功能和特性的系统。使用BDD方法编写测试用例使得测试用例变得简单。BDD测试易于非开发人员和测试人员理解。

在我的上一篇文章中,我给出了我的项目概述,并向社区介绍了使用Gherkin和Codeception进行自动测试的优点。在这篇文章中,我将介绍我的项目的当前状态。

 

亮点

在编码期初,我对我的项目架构非常困惑。在导师的指导下,我实现了以下要点

  • 使用自己的测试/composer.json文件进行独立使用

  • 将Codeception更新到最新版本2.2

  • 使用Codeception改进了步骤和页面对象中的场景。

  • 感谢Javier和Puneet提供的PR #22,提供了一个示例架构。

  • 将joomla浏览器方法移入步骤和AcceptanceTester.php

到目前为止完成的工作

实现了用户后台和前台场景

  • 更新用户名和其他用户详情

  • 锁定用户

  • 解锁用户

  • 删除用户

  • 验证com_users中的可用标签

  • 创建超级管理员并登录到后台

  • 没有用户名的用户失败

  • 创建组

  • 编辑组

  • 删除组

  • 创建具有名称、用户名、电子邮件、密码和默认值的用户

  • 创建ACL级别

  • 编辑ACL

  • 删除ACL

  • 用户设置(与com_config混合使用)

前台

  • 在前台创建用户并登录(index.php?option=com_users)

  • 创建被阻止的用户并尝试在前台登录

  • 测试最后登录日期

  • 在前台更改详情,在后台检查

  • 在前台注册新用户并在后台检查

  • 检查块和激活是否正常工作

实现内容后端场景

  • 创建新类别

  • 修改类别

  • 删除类别

  • 发布类别

  • 取消发布类别

  • 验证文章中的可用选项卡:新类别

  • 验证文章中的可用选项卡:新

  • 无标题创建文章失败

  • 文章设置(显示投票)

  • 无标题创建类别失败

  • 为新建文章创建菜单项

  • 为特定类别中的文章创建菜单项

 gherkin codecept user dark final

 

对Joomla!文档的贡献

我已经更新了Joomla!文档,并添加了Gherkin和Codeception的测试指南。https://docs.joomla.org/Testing_Joomla_Extensions_with_Codeception#BDD_Testing_using_Gherkin_and_Codeception

 

在Joomla! Bug Squashing中的贡献

我的导师Yves Hoppe建议我每周至少测试2个来自Joomla! CMS的Pull Request。因为这是最了解Joomla! CMS和参与社区的好方法。

 

在Joomla!市场团队中的贡献

为了在社区中更有参与感,我尝试帮助Joomla!市场团队将Joomla! 3.6市场横幅和推广翻译成我的母语印地语。

 

每周项目会议

我们每周二在Glip或有时在Hangout视频聊天中进行会议。在那里我们讨论进度、过去一周遇到的问题、解决方案和下周任务议程。我的导师们很棒,在整个周内帮助我,回答我的问题,消除我的疑惑。我们将每次会议报告发布在志愿者门户上。


 

演示

此视频将演示内容、用户后端和前端Gherkin功能实施以及BDD中的Codeception验收测试的步骤。

 

后续参考

  1. GSOC’16提案链接 - https://summerofcode.withgoogle.com/projects/#5724182314745856

  2. 项目仓库 https://github.com/joomla-projects/gsoc16_browser-automated-tests
  3. 问题: https://github.com/joomla-projects/gsoc16_browser-automated-tests/issues

  4. 文档 https://github.com/joomla-projects/gsoc16_browser-automated-tests/blob/staging/README.md

 

我要感谢我的导师Javier Gómez、Yves Hoppe和Niels Braczek在这项项目中帮助我。

非常感谢整个GSoC团队帮助我并介绍我加入这个极好的J!社区。

一些在Joomla社区杂志上发表的文章代表了作者对特定主题的个人观点或经验,可能并不与Joomla项目官方立场一致

0
JCM调查2016:我们在倾听社区
GSoC:帮助Yash Part-II。改进的进展...
 

评论

已经注册? 这里登录
暂无评论。成为第一个发表评论的人

通过接受,您将访问https://magazine.joomla.net.cn/外部第三方提供的服务