小编Lar*_*lla的帖子

需要类似QWidget的完成信号

我正在寻找类似于完成信号的东西QDialog,仅用于QWidget.原因是,一旦窗口小部件弹出(我根本不是问题),我禁用我的工具栏,并且我希望在关闭窗口小部件后再次启用工具栏.

我也无法覆盖该窗口小部件的close-Event,因为那时我们将在业务类中使用GUI代码.

qt signals qwidget

13
推荐指数
2
解决办法
2万
查看次数

Bamboo的JUnit Parser不会解析我的gtest output.xml

我试图用Bamboo添加一些自动单元测试到我的项目,并且一直面临一些问题.单元测试本身是使用googletest完成的,它创建了一个XML文件,该文件应与JUnit解析器兼容.

但是,执行Bamboo的JUnit Parser时出现以下错误:

02-Apr-2013 12:11:22 Starting task ''Parse UnitTest output' of type 'com.atlassian.bamboo.plugins.testresultparser:task.testresultparser.junit'
02-Apr-2013 12:11:22 Parsing test results...
02-Apr-2013 12:11:22 Failing task since test cases were expected but none were found.
02-Apr-2013 12:11:22 Finished task 'Parse UnitTest output'
Run Code Online (Sandbox Code Playgroud)

这似乎与.xml文件本身没有任何关系,因为我尝试了一些.这包括我自己的output.xml,由googletest生成,以及来自https://confluence.atlassian.com/display/BAMBOO/JUnit+parsing+in+Bamboo的示例输出.
我还针对两个提议的.xsd文件调整了所述文件,这些文件应该与JUnit Parser期望的输出相匹配,但都没有效果.

更新:
到目前为止,我告诉JUnit Parser寻找$ {bamboo.build.working.directory} /output.xml
当我尝试**/*.xml时它起作用了.
据我所知,在仔细阅读任务描述后,我必须给它一个文件夹.但我也可以给它文件,如果我用ant-style(用glob?).这至少是非常混乱,仍然没有完全回答初始问题.所以,如果有人能够启发我,请做.

junit googletest bamboo

6
推荐指数
1
解决办法
4250
查看次数

使用可变数量的参数调用QMetaObject :: invokeMethod()

我此刻正在移植FitNesse的Slim-server,我现在有点卡住了.我得到的是这样的字符串:

("id_4", "call", "id", "setNumerator", "20")
("id_5", "call", "id", "setSomethingElse", "10", "8")
Run Code Online (Sandbox Code Playgroud)

其中"setNumerator"和"setSomethingElse"是应该调用的方法的名称,"20","10"和"8"是我传递的参数.

所以我现在的问题是,我不知道如何对两种方法使用一次调用invokeMethod.我目前的解决方法如下所示:

//(if instructionLength==5)
metaObj->invokeMethod(className, methodName.toAscii().constData(), Qt::DirectConnection,
                                          Q_ARG(QVariant, instructions.at(index).at(4)))

//(if instructionLength==6)
metaObj->invokeMethod(className, methodName.toAscii().constData(), Qt::DirectConnection, Q_RETURN_ARG(QVariant, retArg),
                                          Q_ARG(QVariant, instructions.at(index).at(4)),
                                          Q_ARG(QVariant, instructions.at(index).at(5)))
Run Code Online (Sandbox Code Playgroud)

等等......

一方面,似乎每个invokeMethod调用都需要非常具体的信息,这使得使用可变数量的参数很难做到这一点.另一方面,必须有一种方式,所以我不必做同样的事情两(或后来:十)次.

所以问题是,是否有另一种方法可以通过一次通话完成?

c++ qt

4
推荐指数
1
解决办法
8052
查看次数

标签 统计

qt ×2

bamboo ×1

c++ ×1

googletest ×1

junit ×1

qwidget ×1

signals ×1