小编Zor*_*ric的帖子

测试Java套接字

我正在开发一个网络应用程序,我希望得到正确的单元测试.这个时候我们会这样做,你知道吗?:)

不过,我在测试网络连接时遇到了麻烦.

在我的应用程序中,我使用plain java.net.Sockets.

例如:

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;

public class Message {
    byte[] payload;

    public Message(byte[] payload) {
        this.payload = payload;
    }

    public boolean sendTo(String hostname, int port) {
        boolean sent = false;

        try {
            Socket socket = new Socket(hostname, port);

            OutputStream out = socket.getOutputStream();

            out.write(payload);

            socket.close();

            sent = true;
        } catch (UnknownHostException e) {
        } catch (IOException e) {
        }

        return sent;
    }
}
Run Code Online (Sandbox Code Playgroud)

我读到了关于嘲笑但不确定如何应用它.

java sockets unit-testing mocking

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

是否有人使用php/mysql进行开发/暂存/部署工作流程?

我正在考虑php/mysql web开发的良好工作流程.

有人有提示吗?

php mysql workflow staging

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

在使用capistrano和svn部署rails时,在哪里放置app-config-files

我有两个配置文件

/app/config/database.yml
Run Code Online (Sandbox Code Playgroud)

/app/config/userconfig.yml
Run Code Online (Sandbox Code Playgroud)

我不想将数据库凭据和userconfig放在svn-repository中,所以我签入了database.yml.dist和userconfig.yml.dist.

在第一次部署应用程序时,在共享目录中获取dist文件的copys的最佳方法是什么?

对于以后的部署,我将从/ app/current/config链接到它们

svn deployment capistrano ruby-on-rails configuration-files

7
推荐指数
1
解决办法
3724
查看次数

重写方法后类不可序列化

createSocket()在我的测试用例中覆盖了一个方法,以便在一个模拟的Socket中使用.执行此操作后,对象不再可序列化.

这是一个不起作用的例子.

Foo.java

import java.io.Serializable;

public class Foo implements Serializable {
    private static final long serialVersionUID = 3109852436898487119L;

    public void bar() {
        System.out.println("Foo");
    }
}
Run Code Online (Sandbox Code Playgroud)

FooTest.java

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

import junit.framework.TestCase;

import org.junit.Test;

public class FooTest extends TestCase {

    // this passes
    @Test
    public void testFooIsSerializable() throws IOException {
        Foo foo = new Foo();

        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        ObjectOutputStream out = new ObjectOutputStream(baos);
        out.writeObject(foo);
    }

    // this throws a java.io.NotSerializableException
    @Test
    public void testFooIsStillSerializableAfterBarIsOverridden() …
Run Code Online (Sandbox Code Playgroud)

java serialization overriding

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