草庐IT

test-driven-development-with-refa

全部标签

testing - 在涉及全局变量的不同包中同步测试的最佳方法是什么?

我正在做一个go项目,我的任务是为一个包编写一些测试。测试需要访问不同包中的全局变量。这个全局变量可能在不同包的测试中设置/访问。因为默认情况下,gotesting会针对不同的包并行运行。因此,设置/访问此变量可能会产生竞争条件。最简单的同步方法是创建一个跨越不同包的共享sync.Mutex。话虽如此,我试图将这个sync.Mutex放在声明全局变量的xxx.go的xxx_test.go中,不幸的是,由于作用域,另一个包无法访问这个Mutex局限性。最终,我发现我必须将这个sync.Mutex放到一个专门用于测试的实用程序包中,然后不同的包可以访问这个Mutex以实现该全局变量的同步目

unit-testing - 结构字段还原

这个问题在这里已经有了答案:Howtosetandgetfieldsinstruct'smethod(3个答案)Assignanewvaluetoastructfield(2个答案)关闭5年前。我正在玩Go,但在做一些测试时发现了这种奇怪的情况。我正在使用结构中的方法将变量发送到另一个应该更改字段的方法,但是当我最后检查它时,该字段返回到第一个值,这让我感到困惑。func(thisTVManager)sendMessage(messagestring){fmt.Println("5",this.connector)payload:=map[string]string{"id":"0",

unit-testing - 如何验证在单独的 go 例程中调用了一个方法

在为一个方法编写单元测试时,我遇到了一个问题。首先是被测代码片段:funcMehodToBeTested(eEntity){gosaveAudit(e)//dosomethingonwhichassertionscanbedone}实体可以被模拟。在saveAudit方法中,调用了Entity.Save方法。在我的UT中,我想断言Entity.Save方法被调用一次。以下是我当前的UT:funcTestMethod(t*testing.T){varmock=&mockEntity{}mock.On("Save").Return(nil)//makecalltofuncundertest

unit-testing - 您将如何对一个唯一目的是进行数据库调用的方法进行单元测试?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭5年前。Improvethisquestion我有这样的方法:func(alert*Alert)CreateAlert(db*mgo.Database)error{returndb.C("alerts").Insert(&alert)}我应该如何对此进行单元测试?如果我只是调用此方法进行uni测试,那么我将不得不创建调用的测试数据库。我以某种方式觉得这将是集成测试的一部分,因为我们正在调用DB。如果我模拟db对象,那么它永远不会测试实

xml - 使用 JAXB 时出现 java.net.MalformedURLException : no protocol with javax. xml.stream.XMLStreamException

我正在使用JAXB解码XML文档。在解析XML时,它会抛出一个用XMLStreamException包装的MalformedURLException。我的理解是在创建XMLStreamReader对象本身时它抛出了异常。有什么建议吗?我使用的代码片段:XMLInputFactoryxif=XMLInputFactory.newFactory();XMLResolverresolver=newXMLResolver();//tocapturesystemID,baseURIetc.xif.setXMLResolver(resolver);//ThrowsMalformedURLExcep

XML 架构 : Element with attributes containing "restricted" text only

我想用一些受限文本和属性定义一个元素somerestrictedtext如何创建这样的元素?我试过:但是收到错误消息:类型“#AnonType_childparent”的复杂类型定义表示错误。使用时,基type必须是一个复杂类型,其内容类型是简单的,或者,只有在指定限制时,才是具有混合内容和可空粒子,或者,仅当指定了扩展名时,才为简单类型。“字符串”不满足这些条件。然后尝试这样的事情这次错误是(这次我没有添加任何限制;这只是为了测试目的):类型的复杂类型定义表示错误'#AnonType_childparent'。使用时,基类型必须是复杂类型。“字符串”是简单类型。我没有弄清楚这些错误意

java - Spring xml + JUnit - xml 上下文文件在 src/test/resources 中不起作用但在 src/main/resources 中起作用

我遇到这样的junit测试问题。出于某种原因,spring上下文文件只有在我将它们放在maven项目的src/main/resources文件夹中时才有效。Intellij没有给我任何警告,但来自mvn和idebomb的junit测试运行程序。两种情况下的代码和输出如下:@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:/test-applicationContext.xml"})publicclassDataSharingTest{AuthTokenServiceauthTokenServ

java - 简单的 : element with elements list or text

我必须解析一个可以是两种类型的XML文件:Sometext和我如何使用Java执行此操作?我创建了一个类:@Root(strict=false)publicclassPropertyValue{@ElementList(inline=true,required=false)privateListitems;@Text(required=false)privateStringtext;}ItemData是item类。但这行不通。代码给了我一个异常(exception):org.simpleframework.xml.core.TextException:Textannotation@or

java - jackson XML 注释 : Extract single string value from XML element with attributes

我正在使用JacksonXML注释将XML文档从外部API转换为POJO。XML中的一个元素给我带来了一些麻烦。大多数元素没有属性,只有一个文本值,例如:TitleHere不过我在使用一个元素时遇到了一些问题,它有一个属性,如下所示:Caution我只想提取文本值“Caution”并将其存储在一个字符串中。我最初在我的Java类中尝试过这种方式:publicclassItem{@JacksonXmlProperty(localName="urgency")privateStringurgency;}但这会导致以下错误:Causedby:com.fasterxml.jackson.dat

Python 和 libxml2 : how to iterate in xml nodes with XPATH

我在从XML树中检索信息时遇到问题。我的XML具有这种形状:firstjohnjohn_1john_2secondmikemike_amike_bthirdalbertpaperofalotherpaper我想做的是像下面这样提取数据元组:[{'code':'first','name':'john'},{'code':'second','name':'mike'},{'code':'third','name':'albert'}]现在我写了这段python代码:try:doc=libxml2.parseDoc(xml)except(libxml2.parserError,TypeErr