小编met*_*bed的帖子

初始化并清理TestNG中并行测试的每个测试数据

在将一些测试从JUnit迁移到TestNG时,我遇到了一个问题,因为这些测试框架如何处理它们的Test类实例.

JUnit为每个测试方法创建一个Test类的新实例.所以我看到的一个常见模式是:

public class MyTest {

    private Stream inputData;

    @Before
    public void setUp() {
        // Set up some data in (non-static) instance fields
        // This data is isolated per test
        inputData = createInputDataStream();
    }

    @Test
    public void testStuff() {
        // Use the data from the instance fields
        doStuff(inputData);
    }

    @After
    public void tearDown() {
        // Clean up the data from the instance fields
        closeInputDataStream(inputData);
    }
}
Run Code Online (Sandbox Code Playgroud)

相比之下,TestNG对所有测试方法使用Test类的单个实例.所以上面的模式不起作用!由于数据存储在实例字段中,因此不再隔离这些值.如果启用并行执行,这可能会导致覆盖数据中期测试.

那么我如何使用TestNG做到这一点?是否有存储将其分离出每个数据的方式@BeforeMethod- @Test- @AfterMethod元组?

我可以在@Test自己内部完成所有3个步骤,但这需要try...finally在每个测试中添加笨拙的块.我也试过使用ITestContext …

java junit testng unit-testing

5
推荐指数
1
解决办法
1740
查看次数

带ProgressBar的WPF SplashScreen

我有一个WPF项目,项目向导添加了一个启动画面.在同一个启动画面上,我想添加一个进度条样式表.有人知道怎么做吗?

wpf splash-screen

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

如何在调用Javascript变量之前检查它是否已定义

我正在使用Cordova GA插件来跟踪事件,但是当我在浏览器中进行测试时,我会继续:

ReferenceError:未定义插件

我尝试了很多方法来检查插件是否已经定义,但它仍然会抛出此错误.在调用函数之前,如何正确检查插件是否已定义?

javascript cordova

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

在 JPA CriteriaQuery 中使用 @Embeddable 实体

假设我有以下示例实体 - 一个是@Embeddable嵌入在另一个中的@Entity

@Embeddable
public class ContactInfoEntity {

    @Column
    private String phone;

    @Column
    private String zipCode;
}

@Entity
@Table(name = "EMPLOYEE")
public class EmployeeEntity {

    @Id
    @Column(name = "EMPLOYEE_ID")
    private Long employeeId;

    @Embedded
    @AttributeOverrides({
        @AttributeOverride(name = "phone",
                           column = @Column(name = "EMPLOYEE_PHONE")),
        @AttributeOverride(name = "zipCode",
                           column = @Column(name = "EMPLOYEE_ZIP_CODE"))
    })
    private ContactInfoEntity employeeContactInfo;
}
Run Code Online (Sandbox Code Playgroud)

openjpa-maven-plugin 生成的元模型类只包含一个employeeContactInfo变量,而不包含@AttributeOverride列。

现在假设我想这样做:

选择EMPLOYEE_IDEMPLOYEE_PHONE其中EMPLOYEE_ZIP_CODE等于“123456”

我如何将其创建为CriteriaQuery?

CriteriaBuilder cb = entityManager.getCriteriaBuilder(); …
Run Code Online (Sandbox Code Playgroud)

java jpa criteria openjpa criteria-api

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

具有不同支持字段类型的 Kotlin 数据类

我有一个用于 JSON 序列化的简单类。为此,外部接口使用Strings,但内部表示不同。

public class TheClass {

    private final ComplexInfo info;

    public TheClass(String info) {
        this.info = new ComplexInfo(info);
    }

    public String getInfo() {
        return this.info.getAsString();
    }

    // ...more stuff which uses the ComplexInfo...
}
Run Code Online (Sandbox Code Playgroud)

我在 Kotlin 中工作(不确定是否有更好的方法)。但非 val/var 构造函数阻止我使用data.

/*data*/ class TheClass(info: String) {

    private val _info = ComplexInfo(info)

    val info: String
        get() = _info.getAsString()


    // ...more stuff which uses the ComplexInfo...
}
Run Code Online (Sandbox Code Playgroud)

我如何让它作为一个工作data class

kotlin data-class

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

使用AngularJS的Widget框架

在我的项目中,我需要构建一个类似iGoogle的页面.该页面将具有多个拖放小部件,每个小部件都是一个单独的应用程序.

任何建议/链接?

drag-and-drop widget angularjs

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

导出图片Excel VBA

我在尝试从工作簿中选择和导出所有图片时遇到问题。我只想要照片。我需要选择并将它们全部保存为:“照片 1”、“照片 2”、“照片 3”等,位于工作簿的同一文件夹中。

我已经尝试过这段代码:

Sub ExportPictures()
Dim n As Long, shCount As Long

shCount = ActiveSheet.Shapes.Count
If Not shCount > 1 Then Exit Sub

For n = 1 To shCount - 1
With ActiveSheet.Shapes(n)
    If InStr(.Name, "Picture") > 0 Then
        Call ActiveSheet.Shapes(n).CopyPicture(xlScreen, xlPicture)
        Call SavePicture(ActiveSheet.Shapes(n), "C:\Users\DYNASTEST-01\Desktop\TEST.jpg")
    End If
End With
Next

End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba export image

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

使用Spring Cloud连接器访问CloudFoundry用户提供的服务

我正在尝试使用Spring Cloud从Cloud Foundry应用程序中使用通用REST服务.

此服务使用Spring Boot创建,如下所示:

package com.something;

@RestController
public class DemoServiceController {
    @RequestMapping("/sayHi")
    public String sayHi() {
        return "Hello!";
    }
}
Run Code Online (Sandbox Code Playgroud)

这很好 - 我可以访问http://www.example.com/srv/demo/sayHi并获得"你好!" 背部.

接下来,我使用CF-CLI创建了一个用户提供的服务实例,并将其绑定到我的应用程序.我现在可以看到绑定的服务了VCAP_SERVICES.

cf cups my-demo-service -p '{"url":"http://www.example.com/srv/demo/"}'
cf bs my-demo-app my-demo-service
Run Code Online (Sandbox Code Playgroud)

接下来,描述在这里,我加入这个bean到我的应用程序的Spring配置,用connector-type一套我原来的控制器(我对它的引用以及).

<cloud:service id="myDemoService"
               service-name="my-demo-service"
               connector-type="com.something.DemoServiceController"
               />
Run Code Online (Sandbox Code Playgroud)

现在,当我自动连接"myDemoService"到我的应用程序时,

@Autowired
private DemoController myDemoService;
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

找不到指定类型的服务.

我已确保包含所有必需的依赖项,包括spring-cloud-spring-service-connectorspring-cloud-cloudfoundry-connector.

这里出了什么问题?我给出了错误的bean参数吗?任何帮助深表感谢.

java spring spring-mvc cloud-foundry spring-cloud

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

无法转换项目:C:\ workspace_IntelliJ\Main \new-webapp\.idea\workspace.xml:第1行出错:prolog中不允许内容

我不知道突然发生了什么.我重新启动了我的Idea工作区,它弹出以下错误:

无法转换项目:C:\ workspace_IntelliJ\Main \new-webapp.idea\workspace.xml:第1行出错:prolog中不允许使用内容.

这个错误是什么意思?我检查了我的workspace.xml.每当我尝试在编辑器中打开它时,它会显示以下内容(我相信它已被破坏):

nulnulnul
Run Code Online (Sandbox Code Playgroud)

我不知道要改变什么以及如何解决这个问题.任何有关这方面的帮助都会很棒!

java xml ide intellij-idea

2
推荐指数
1
解决办法
3132
查看次数

将多个k8s秘密组合到一个env变量中

我的k8s命名空间包含一个Secret在部署时(由svcat)创建的,因此这些值事先未知。

apiVersion: v1
kind: Secret
type: Opaque
metadata:
  name: my-database-credentials
data:
  hostname: ...
  port: ...
  database: ...
  username: ...
  password: ...
Run Code Online (Sandbox Code Playgroud)

A Deployment需要以略有不同的格式注入这些值:

...

containers:
  env:
  - name: DATABASE_URL
    valueFrom:
      secretKeyRef:
        name: my-database-credentials
        key: jdbc:postgresql:<hostname>:<port>/<database> // ??

  - name: DATABASE_USERNAME
    valueFrom:
      secretKeyRef:
        name: my-database-credentials
        key: username

  - name: DATABASE_PASSWORD
    valueFrom:
      secretKeyRef:
        name: my-database-credentials
        key: password
Run Code Online (Sandbox Code Playgroud)

DATABASE_URL需要的组成了hostnameport从以前定义的秘密“database`。

有什么办法可以做这个组合吗?

kubernetes kubernetes-helm

2
推荐指数
1
解决办法
551
查看次数