在软件测试中需要完成哪些工作?