我们的团队有一个任务系统,我们发布分配给每个开发人员的小型增量任务.
每个任务都在自己的分支中开发,然后在合并到主干之前对每个分支进行测试.
我的问题是:任务完成后,谁应该定义应该在此任务上完成的测试用例?
理想情况下,我认为任务开发人员本身最适合这项工作,但我认为开发人员有很多阻力,他们认为这是浪费他们的时间,或者他们根本不喜欢这样做.
我不喜欢让我的QA人员这样做的原因是因为我不喜欢他们创造自己的作品的想法.例如,他们可能会遗漏那些测试过多的工作,他们可能不知道所需的技术细节.
但同样地,开发人员做测试案例的部分是,他们可能会遗漏他们认为会破坏的事情.(甚至下意识地也许)
作为项目经理,我最终自己编写了每个任务的测试用例,但我的时间已经征税了,我想改变它.
建议?
编辑:通过测试用例我的意思是在应该合并到主干之前应该对分支执行的各个QA任务的描述.(黑盒子)
在IE6,IE7和FF2中,.outer下面的div延伸到文档的右边缘.这是一个完整的测试用例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
.outer { position:absolute; border:1px solid red; }
.outer .floater { float:right; }
</style>
</head>
<body>
<div class="outer">
<div class="floater">Lorem ipsum</div>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
据我所知position:absolute,外部div应该从文档流中删除,并且(没有指定宽度)应该占用显示其内容所需的最小空间量.然而float:right,任何一个孩子打破这个.
预期输出(IE8,FF3 +,Chrome 2 +,Safari 4,Opera 9+):

实际输出(IE6,IE7,FF2):

如何让外部div不伸展?这只发生在IE6,IE7和Firefox 2中.
要求:
.outer不能width有一套(必须保留"auto").outer 必须保持绝对的位置.floater 必须保持向右浮动更新:
我使用jQuery对话框将这种行为再现为"真实世界"的例子.特点是一样的:
width="auto"在这里看到它.同样,IE6,IE7和FF2是唯一有问题的浏览器.
这复制了我的应用程序中的条件.我尝试将问题归结为您在此更新上面看到的内容,但我感觉人们可以使用我的需求有意义的真实示例.我希望我已经这样做了.
与字符串输入相关的一些有用的测试用例思想(和测试问题)是什么? 实用性并不意味着在任何地方或所有时间都适用 - 当您解决新问题/系统/域时,通常足够值得考虑.
个别答案可能包含某些特定领域的问题(例如电子邮件地址),但应该指向一个单独的维基问题.
请将您的答案同时添加到问题和答案列表中,以便可以对个别项目进行投票.
一些答案:
相关SO问题:
什么是阳性测试用例和阴性测试用例?
谷歌上搜索它,我发现的答案非常令人困惑.有人可以用例子来解释吗?
我为我的Django应用程序编写了一系列测试,并希望在我的生产数据库的副本上运行它们.
据我所知,最好的方法是使用夹具加载,如下所示:
但是,这种方法很麻烦.我有多个应用程序,并为每个应用程序运行manage.py dumpdata,并且每次我想测试我的应用程序时手动移动fixtures文件都很痛苦.
有没有更简单的方法来自动生成我的整个生产数据库的副本并测试我的Django应用程序?
有人可以在Android中使用JUnit来介绍如何在测试套件中组织测试吗?我发现几乎所有的例子都是不工作的,我想知道我没有得到什么.
我用一个包含几个测试的AndroidTestCase类和一个包含包中所有测试的测试套件做了一个小例子.这工作(显然):
包含测试的测试用例类:
public class ArithmeticsTest extends AndroidTestCase {
SomeClass sctest;
protected void setUp () throws Exception {
sctest = new SomeClass();
super.setUp();
}
/* Test the SomeClass.addNumbers (int, int) method: */
public void testAddNumbers () {
assertEquals(9, sctest.addNumbers(3, 6));
}
/* Test the SomeClass.addNumbers (int, int) method: */
public void testSubtractNumbers () {
assertEquals(2, sctest.subtractNumbers(6, 4));
}
protected void tearDown () throws Exception {
super.tearDown();
}
}
Run Code Online (Sandbox Code Playgroud)
测试套件类包括包中的所有测试:
import junit.framework.Test;
import android.test.suitebuilder.TestSuiteBuilder;
public class ProjectTestSuite_AllTests {
public static Test …Run Code Online (Sandbox Code Playgroud) 是否使用新的(或不同的)TestCase对象实例来运行JUnit测试用例中的每个测试方法?或者一个实例重用于所有测试?
public class MyTest extends TestCase {
public void testSomething() { ... }
public void testSomethingElse() { ... }
}
Run Code Online (Sandbox Code Playgroud)
在运行此测试时,MyTest会创建多少个类实例?
如果可能,请提供指向我可以验证行为的文档或源代码的链接.
我想学习如何在编写代码之前编写测试用例.我读了一篇关于测试驱动开发的文章.我想知道开发人员如何编写测试用例 例如这个方法:
public int divideNumbers(int num1, int num2)
{
return num1 / num2;
}
Run Code Online (Sandbox Code Playgroud) 我试图通过对unittest.testcase类进行子类化来创建自定义单元测试框架,但在处理该__init__方法时似乎犯了一个错误.
我无法弄清楚为什么构造函数在ComplexTest进入之前没有被调用BasicTest,异常似乎也与我的构造函数有关.
我是Python的新手,所以对于如何解决这个特定问题或我的用例的替代架构的任何帮助都将是非常受欢迎的.
谢谢!
1)test_framework.py
import unittest
class BasicTest(unittest.TestCase):
def __init__(self, *args, **kwargs):
print('BasicTest.__init__')
super(unittest.TestCase, self).__init__(*args, **kwargs)
def setUp(self):
print('BasicTest.setUp')
super(unittest.TestCase, self).tearDown()
def tearDown(self):
print('BasicTest.tearDown')
super(unittest.TestCase, self).tearDown()
class ComplexTest(BasicTest):
def __init__(self, *args, **kwargs):
print('ComplexTest.__init__')
super(BasicTest, self).__init__(*args, **kwargs)
def setUp(self):
print('ComplexTest.setUp')
super(BasicTest, self).tearDown()
def tearDown(self):
print('ComplexTest.tearDown')
super(BasicTest, self).tearDown()
Run Code Online (Sandbox Code Playgroud)
2)test.py
import unittest
import test_framework
class TestValueFunctions(test_framework.ComplexTest):
def __init__(self, *args, **kwargs):
print('TestValueFunctions.__init__')
super(test_framework.ComplexTest, self).__init__(*args, **kwargs)
def setUp(self):
print('TestValueFunctions.setUp')
super(test_framework.ComplexTest, self).tearDown()
self.value = 4711
def tearDown(self):
print('TestValueFunctions.tearDown')
super(test_framework.ComplexTest, …Run Code Online (Sandbox Code Playgroud) 我知道这是一个愚蠢的问题,但我想知道如何在 Codility 测试中执行自己的测试用例。我可以向我的函数添加几个测试输入,但我不知道如何使用这些值执行它。
我感谢任何输入。