首页 文章

如何从csv读取除使用set选项之外的JSON请求的测试数据

提问于
浏览
1

我使用空手道的设置功能来使用JSON表达式更改键中的值 . 我主要使用它来根据测试场景更改请求内容 . 这使我有能力避免从csv文件中读取大量测试数据 . 但是,在某些情况下,我更喜欢使用csv .

例如,我有大约230个测试场景作为发布请求,我有130个不同的客户信息,我需要根据上下文在230个测试用例中使用这些信息 . 客户信息包括姓氏,姓氏,年龄,地址等 . 但是,架构是相同的 . 如果我需要使用像groovy模板引擎这样的东西,那将是在空手道中使用的最佳方法

我需要将这些数据保存在csv中,读取它并在触发请求之前将值传递给JSON模板 . 我仍然需要依赖csv /外部资源,因为这些数据经常变得过时,我需要经常更改它 . 你能否分享一下你对此的想法?

2 回答

  • 2
    • 使用与此示例(JDBC)类似的方法,您应该能够在不到一个小时的时间内将CSV写入JSON转换器:dogs.feature

    • IMO一旦习惯了tableset multiple语法,它就比CSV-s好得多,因为它更具可读性 . 您可以使用call并从仅包含数据的第二个功能文件加载数据 .

    • 我个人建议使用JSON数组而不是CSV . 有很多工具可以让你编辑JSON . 在空手道中轻松实现read JSON并将其用于data-driven testing . 你甚至可以组合 settable ,看看这个想法:dynamic-params.feature

    • 我猜你知道空手道中内置的JSON模板:embedded expressions - 你应该看看这里广泛的测试用例:js-arrays.feature

    确保你通过demo-examples .

  • 1

    我同意你的做法 . 我还认为从JSON数组读取数据或使用表格功能更好 . 我现在正在努力 . 我在一个有很多访问限制的前提下工作 . 我告诉团队你的答案 . 我们会密切关注这些问题 . 但是,我无法从办公室登录堆栈溢出 . 所以迟迟没有对此做出回应 . 抱歉耽搁了 .

    现在我主要进行研发以找到测试Web服务的解决方案,该解决方案可以与webdriver DB验证集成 . 我们早些时候决定放心 . 使用空手道后,我们肯定改变了主意 . 我们在ThoughtWorks工作的朋友之一建议了空手道,我们开始了解它 .

    我们对它的能力印象深刻,并且非常高兴看到堆栈溢出中发布的问题得到了如此快速的回答 . 这使我们更有信心使用空手道 . 我建议空手道需要一个像放心的个人网站 .

相关问题