当前,我有一组共享的Scalatest测试,这些测试生活在特征中,并在必要时混合到测试类中,如下所示:
trait SharedBehavior{
def supportsCoolFeature(){
//Testing happens here
}
def doesNotSupportCoolFeature(){
//Testing happens here
}
}
Run Code Online (Sandbox Code Playgroud)
class MyItemTests extends SharedBehavior{
"A-Type Items" should behave like supportsCoolFeature(itemA)
"B-Type Items" should behave like doesNotSupportCoolFeature(itemB)
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,itemA和itemB是指生活在数据库中的对象Scala的类实例。要运行这些测试,我需要创建相应的数据库记录,然后在测试后将其删除。如何有效地使用夹具策略,使我能够通过共享测试执行设置和拆卸?
尽管这不是理想的选择,但我还是愿意接受一个解决方案,该解决方案只对整个套件进行一次设置和拆卸。我可以编写测试,以便它们不会互相干扰,但是我需要防止数据库随着时间的推移变得混乱。
尝试启动我的服务器时,Apache无法启动,MAMP声称端口([::]:8888)已在使用中.
我几乎已经尝试过各种方式来确定使用该端口的进程(以及之前在SO上列出的许多解决方案),但我没有得到任何结果.lsof或netstat都没有列出关于端口8888的任何信息.似乎没有任何东西使用这个端口.
我需要改进我的搜索并找到真正使用该端口的东西(如果有的话),或以某种方式说服MAMP该端口实际上没有被使用.有什么建议?
编辑:将端口更改为8887允许Apache启动.这并没有改变没有使用端口8888的事实,它应该适用于该端口.