ExcelBDD-Java开源组件发布了!

前面6月12日发布了ExcelBDD的PowerShell组件,见《ExcelBDD开源啦!暨PowerShell ExcelBDD发布》,

6月14日上文介绍了ExcelBDD开源敏捷项目启动了!暨介绍微软Agile+DevOps免费平台-dev.azure.com

最新发布了ExcelBDD-Java开源组件第1版,最新版本号0.3.0,在search.maven.org刚刚可以搜到。Maven导入的语句如下

<dependency>
  <groupId>com.excelbdd</groupId>
  <artifactId>excelbdd-java</artifactId>
  <version>0.1.4</version>
</dependency>

前面文章(利用Excel BDD来表达典型用户故事)已经介绍了要解决的场景与及相应代码,结合本次发布,展示Cucumber当中的一个列子,作为对比,看看ExcelBDD如何解决。例子的Feature文件如下:

Feature: Is it Friday yet?
  Everybody wants to know when it's Friday

  Scenario: Sunday isn't Friday
    Given today is Sunday
    When I ask whether it's Friday yet
    Then I should be told "Nope"

以上来自 Cucumber

按ExcelBDD改写得到如下
在这里插入图片描述
然后,利用ExcelBDD-Java小工具从中读出,Junit5样例如下


  static Stream<Map<String, String>> provideExampleList() {
    String filePath = TestWizard.getExcelBDDStartPath("TestData") + "TestData\\src\\test\\resources\\kq\\testdata\\excel.xlsx";
    return Behavior.getExampleSteam(filePath, "WeekDayCheck");
  }
  
  @ParameterizedTest(name = "#{index} - Test with Map : {0}")
  @MethodSource("provideExampleList")
  final void test(Map<String, String> mapParams) {
    String actualAnswer;
    if(mapParams.get("Day").equals(mapParams.get("DayOfWeek"))){
      actualAnswer = "Yup";
    }else{
      actualAnswer = "Nope";
    }
    assertEquals(mapParams.get("Answer"), actualAnswer);
  }

对比Cucumber,Cucumber需要为GWT每一行写对应的StepDefinaton,ExcelBDD把参数被全部封装在Map里面,不需要写StepDefiniton,后续无论添加多少参数,都可以从Map当中直接获得,只需直接取值,把对比逻辑写好即可。以上取数相关代码行数不超过8行。

Cucumber要先定义变量,设置变量,在对比逻辑之前需要手工完成多项准备,Cucumber虽然提供了样例代码,但还是需要几个手工步骤去处理。随着GWT步骤增加,取数设置变量的代码行数也随之增加,每个步骤至少需要3行,正常一个场景大概需要30行代码来取数。

当然更加关键是不因为Gherkin语法去限制产品经理,Excel支持多种格式,颜色,超级链接等等,支持承载图片。

在扩充案例时,无需改动代码,在Excel里面添加更多场景即可,比如扩充到如下:
在这里插入图片描述
以上代码不需要更改,执行得到3组数据的测试结果,如下样例。
在这里插入图片描述
最后说明,ExcelBDD-Java当前发布还在早期,使用量还不大,书写此文让大家知道下,如果能够得到早期使用,结合反馈能够优化得更好。
欢迎试用。
本开源项目目前只给出了Java和PowerShell两个语言的小工具,无论新语言还是老语言,还是文档等等,都缺人,继续招募开源志愿者,点击原文链接了解更多,有意者扫码联络我。
在这里插入图片描述
加入此项目可以期望的收益:实操敏捷和DevOps,掌握产品分析、掌握BDD和TDD。现成福利:自由访问欣奔敏捷星球上各种案例、教材、文章和代码等等,目前上面已经累积到约700条,从IT到业务的敏捷实践以及DevOps建设实战情况,提供最鲜活的真实案例,也有多套敏捷DevOps教材。
在这里插入图片描述
(欣奔敏捷星球记录了从IT到业务的敏捷实践以及DevOps建设实战情况,提供最鲜活的真实案例。也有成员基于实践情况的提问和解答,星主提供远程教练咨询服务。目前积累内容包括全套敏捷项目管理教材,ScrumBan欣奔版,需求流模式,DevOps具体解决方案。)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值