【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

有目标就不怕路远。年轻人.无论你现在身在何方.重要的是你将要向何处去。只有明确的目标才能助你成功。没有目标的航船.任何方向的风对他来说都是逆风。因此,再遥远的旅程,只要有目标.就不怕路远。没有目标,哪来的劲头?一车尔尼雷夫斯基

导读:本篇文章讲解 【保姆级】SpringBoot整合Cucumber(BDD) >>> part1,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

最近需要搞BDD的单元测试。。。抓耳挠腮

记录下在实际项目中使用Cucumber Test的具体过程,包含多个避坑指南(刨了一个星期的坑= =),希望可以帮你节约大量时间(机智脸.gif)

1. 下载Cucumber Test的项目模版

GitHub【保姆级】SpringBoot整合Cucumber(BDD) >>> part1https://github.com/cucumber/cucumber-java-skeleton

放了一份在码云上,GitHub速度慢的话可以用Gitee

Gitee【保姆级】SpringBoot整合Cucumber(BDD) >>> part1https://gitee.com/aqin1012/cucumber-java-skeleton-main

2. 测试官方用例

1. 在idea打开下载下来的项目

2. 打开并运行文件belly.feature

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

3.编辑测试函数

将下处的报的异常(红框框圈住的部分)复制到StepDefinition.java文件中(添加到原有的内容下面即可)

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

​完整代码

StepDefinitions.java

package com.aqin;

import io.cucumber.java.en.Given;
import io.cucumber.java.en.Then;
import io.cucumber.java.en.When;

public class StepDefinitions {
    @Given("I have {int} cukes in my belly")
    public void I_have_cukes_in_my_belly(int cukes) {
        Belly belly = new Belly();
        belly.eat(cukes);
    }
    @When("I wait {int} hour")
    public void i_wait_hour(Integer int1) {
        // Write code here that turns the phrase above into concrete actions
//        throw new io.cucumber.java.PendingException();
        System.out.println(int1);
    }
    @Then("my belly should growl")
    public void my_belly_should_growl() {
        // Write code here that turns the phrase above into concrete actions
//        throw new io.cucumber.java.PendingException();
        System.out.println("my belly should growl");
    }
}

belly.feature

Feature: Belly

  Scenario: a few cukes
    Given I have 42 cukes in my belly
    When I wait 1 hour
    Then my belly should growl

4. 简单修改下函数

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

5. 执行

再次运行,如下图就测试成功了(官方用🌰,一般没什么问题~)

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

3. 修改为自用项目

1. 修改项目名

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

2. 修改包名

PS:原有的包名位置都需要替换成新包名

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

​记得RunCucumberTest里也要修改

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

​3. 删除原有包

(不想删也行= =,反正没什么用了)

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

4. 关闭项目并修改文件夹名

(一般跟1里改的项目名一样就好)

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

5. 重新打开项目,再次测试

如果刚才的test,能正常运行即修改成功!(好了他现在是你的项目啦~~~)

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

【保姆级】SpringBoot整合Cucumber(BDD) >>> part1

4.根据自己的项目创建目录结构

到这步其实就可以按照自己的项目逻辑添加文件📃了~~~

想继续查看实例项目创建的同学可以参考下

【保姆级】SpringBoot整合Cucumber(BDD) >>> part2_AQin1012的博客-CSDN博客来一个简单的SpringBoot·查询接口·举个🌰吧~~1. 添加依赖<project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”&【保姆级】SpringBoot整合Cucumber(BDD) >>> part1https://blog.csdn.net/aqin1012/article/details/124951195 🎉🎉🎉~~~                                                                                                                                                                                                                                      

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135434.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!