使用CircleCI在持续集成中运行测试脚本吗?

问题描述 投票:0回答:1

我们正在将CircleCI用于CI / CD。在持续集成过程中,我想运行我编写的测试脚本,该脚本生成一些供我的应用程序使用的数据。然后,将运行另一个脚本,并确保在一定时间内处理了数据(性能测试)。有没有办法使用CircleCI通过CI / CD做到这一点?

我有一个Spark Streaming App,它可以从Kafka读取数据,进行处理,然后将其放入数据库中。

我生成一些数据并将其发送给Kafka。同时,Spark程序正在运行(我的脚本没有启动,我之前手动启动了它)。 Spark应用程序会处理这些数据。我的脚本在最初生成数据后仅等待大约1分钟,然后进行API调用以获取Spark处理过的数据的一些指标,基本上是性能指标。

我希望CircleCI从Github中获取代码,对其进行构建,然后将其部署到“测试”服务器,然后在安装了Spark / Kafka的测试环境中运行我的Spark App。然后,我希望CircleCI运行我的自定义脚本。我的脚本将在某些变量X中返回一些性能值。我本质上是希望CircleCI将X与assert(X < 60)之类的值进行比较,然后我希望CircleCI说这在X < 60 == False的测试中失败了。这可能吗?

continuous-integration circleci
1个回答
0
投票

[我知道这个问题已经问了一段时间,但是如果有人有类似的要求,this circleci pipeline会对本地部署的API服务器运行dockerized集成和性能测试。

需要解决的特定问题:

  1. 等待服务器使用pwt在cli上的circleci脚本中启动
  2. 使用wrkLUA脚本针对API运行性能测试>
  3. 使用docker在本地运行(OSX)

git clone https://github.com/simonmittag/jabba.git
circleci local execute --job integration
circleci local execute --job performance

*免责声明:我参与了一些链接的github项目。

© www.soinside.com 2019 - 2024. All rights reserved.