gpt4 book ai didi

java - JUnit 和 RMI 应用程序的最佳实践,RMI 注册表

转载 作者:搜寻专家 更新时间:2023-10-31 20:07:55 28 4
gpt4 key购买 nike

我想为 RMI 客户端应用程序编写一组系统集成测试。我想在 JUnit 3.8.2 中启动 RMI 服务器,然后运行这些测试。有没有人这样做过?

我在带有 main 的 pojo 中使用类似这样的东西:

    import java.rmi.registry.*;    ....    //setup    try {        java.rmi.registry.LocateRegistry.createRegistry(1099);        System.out.println("RMI registry ready.");        this.StartMyServer();        // client set up        MyClient m = null;        m = (MyClient) Naming.lookup("//MyHost/MyServer", m);        // tests here    } catch (MyClientException me) {        System.out.println("MyClient fall down go boom");    } catch (MyServerException me) {        System.out.println("MyServer fall down go boom");    } catch (Exception e) {        System.out.println("Exception starting RMI registry:");    } 

将其转换为 junit 测试的最佳方法是什么,以便注册表仅启动一次并且测试仅在注册表实际启动时运行?我想避免使用一种测试方法的测试类以及来自 main 的所有测试代码,这是我来这里之前发现自己在做的事情。

还有,写测试的时候应该注意什么?任何 RMI 测试问题?

最佳答案

如果您使用的是 JDK 5 或更高版本,我建议您升级到 JUnit 4.4。注释是一个很大的帮助。

我还建议阅读 this .我不明白你为什么要编写一个单独的主类来运行测试。这不是 TestRunner 应该做的吗?

我会在设置中启动注册表并在拆卸方法中将其关闭。

关于java - JUnit 和 RMI 应用程序的最佳实践,RMI 注册表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/428627/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com