小编Chr*_*ian的帖子

如何在测试时按顺序运行子项目测试(包括设置方法)

编辑4横向规则下面的大多数文本与真正的问题没有任何关系.一开始我觉得分叉是问题所在,但事实并非如此.

我正在尝试运行聚合子项目的所有测试.在子项目中的所有测试之前,应该运行设置方法,并且在子项目中的测试之后,应该运行清理方法.

在为聚合项目运行测试任务时,我期望以下顺序

  • 调用项目A的设置方法
  • 执行项目A的测试
  • 调用项目A的清理方法
  • 项目B也是如此

但顺序是:

  • 调用项目A和B的设置方法
  • 执行项目A的测试
  • 执行项目B的测试
  • 调用项目A和B的清理方法

可以在此处找到具有此行为的构建脚本.

如何解决此问题以获得我预期的序列?


我正在使用分叉在我的子项目中运行测试.对于每个子项目,mongo db在测试之前启动并在测试之后停止.

一个项目内的测试按顺序进行; 如果我为一个项目运行测试,这很有效.

但是如果我运行项目根的任务测试(包含子项目的聚合),我希望分叉的jvms按顺序启动,即

  1. 项目A的jvm是分叉的,并且它的测试被执行
  2. 项目B的jvm是分叉的并且它的测试被执行
  3. ...

但看起来jvms是并行启动的; 这不是我想要的.

我尝试了以下(根据文档,应该已经设置为1):

  concurrentRestrictions in Test := Seq(
    Tags.limit(Tags.ForkedTestGroup, 1)
  )
Run Code Online (Sandbox Code Playgroud)

但它没有用.在启动测试任务后,直接从我的安装方法打印以下内容(在打印任何测试日志之前):

startupDb, thread name = pool-4-thread-5 
startupDb, thread name = pool-4-thread-7 
startupDb, thread name = pool-4-thread-2 
startupDb, thread name = pool-4-thread-6 
startupDb, thread name = pool-4-thread-8
startupDb, thread name = pool-4-thread-3 
startupDb, thread name = pool-4-thread-9
Run Code Online (Sandbox Code Playgroud)

这些是我的测试相关设置:

parallelExecution in Test := false, …
Run Code Online (Sandbox Code Playgroud)

scala sbt

5
推荐指数
2
解决办法
2332
查看次数

存储riak对象时,Ruby脚本会挂起

我正在尝试从"Seven Weeks七个数据库"一书中执行脚本hotel.rb.为了使它与riak 2.1.1一起工作,我不得不改变客户端的创建,除了它可以从书籍网站下载的脚本相同:

require 'rubygems'
require 'riak'
STYLES = %w{single double queen king suite}
client = Riak::Client.new(:nodes => [
  {:host => 'localhost', :pb_port => 10017},
  {:host => 'localhost', :pb_port => 10027},
  {:host => 'localhost', :pb_port => 10037}
])

bucket = client.bucket('rooms')
# Create 100 floors to the building
for floor in 1..100
  current_rooms_block = floor * 100
  puts "Making rooms #{current_rooms_block} - #{current_rooms_block + 100}"
  # Put 100 rooms on each floor (huge hotel!)
  for room in 1...100
    # Create …
Run Code Online (Sandbox Code Playgroud)

ruby riak

3
推荐指数
1
解决办法
195
查看次数

Scala HashMap的不同表示

我一直在玩Scala HashMap,我注意到了HashMap的两种不同表示.我想知道是否有人可以解释以下方面的区别:

Map(123 -> 1)
Run Code Online (Sandbox Code Playgroud)

{123=1}
Run Code Online (Sandbox Code Playgroud)

谢谢!

scala hashmap

0
推荐指数
1
解决办法
144
查看次数

标签 统计

scala ×2

hashmap ×1

riak ×1

ruby ×1

sbt ×1