English 中文(简体)
我是否应当使用真正的或样本数据进行单位测试?
原标题:Should I use real or sample data for unit tests?

我写了遗产申请产出的名词,因为档案中没有像我这样多的这些档案样本。

现在我撰写了单元测试文件,然后执行标语(因为没有其他节奏)。

  • use the real files produced by the application, reading from them and comparing the output with the output that I would store in json format in another file.
  • or create a sample string with the tokens and possibilities I want to test and a dict (this is python) with the expected output.

我倾向于使用第二种选择,因为我只需要测试,而没有列入实际档案的所有“真实世界”数据,但我恐怕我会忘记测试一种可能性。

What do you think?

最佳回答

我建议这样做。 撰写一套融合测试,通过你拥有的、预期产出的所有档案进行,然后用你预期的投入进行单位测试,以打破 par的逻辑。

我建议首先编写融合测试,以便你在外面写上你的教官,看看一看一看失败的测试,可能会有分歧,但会帮助你在早些时孤立你的edge。

我认为,这是个大问题。 我最近遇到了一个类似的问题,即从上游系统将大量的xml饲料转化为一种专有形式。 我的解决办法是,在我能够测试所有数据变数之前,撰写一套综合黑箱检测材料,如记录计数和其他高水平成功度量,然后将投入分成小小小小小小小小小小丘。 直到那时,我才非常了解如何建设教区。

问题回答

在测试情景时,应当仔细使用生产数据。 如果你们的所有用户都能从测试环境,例如从测试环境中获得电子邮件,那将是灾难。 在某些假设情景中,即使用户无法知道数据,但也可能不道德。 思想医学、银行、大学等类。

我的回答是,你应当使用接近数据的数据。 如果你想要使用实际数据,那么就有必要对上述假设情景加以cr弄。

生产数据可以是一个良好的起点(假设数据不敏感),因为你有很好的机会思考所有可能的变动。 然而,一旦获得一套良好的工作数据,就不必像一个档案那样静态。 然后这些试验从那里得到,而不是从生产环境中生动地进行。 这样,你就能够用一套已知的投入进行测试。

另一种做法是,将生产数据输入测试材料,却充满问题。 数据的变化可能会造成一次测试结果,但是由于投入的变化,结果失败了。

不要忘记试验的结构,这样你就可以在知道的情况下增加其他可能性(即回归测试)。

采用你提供的第二个解决办法,将使你能够控制预期和回报,这是进行单位测试的理想。 在建立自动测试时,最好尽量避免手工互动——视而不见地扫描结果是你在可能时应当避免的做法之一(假设你所说的“比较”的含义)。





相关问题
run unit tests and coverage in certain python structure

I have some funny noob problem. I try to run unit tests from commandline: H:PROpyEstimator>python src estpython est_power_estimator.py Traceback (most recent call last): File "src est...

How to unit-test an enterprise symfony project?

I´m working on a huge project at my work. We have about 200 database tables, accordingly a huge number of Models, Actions and so on. How should I begin to write tests for this? My biggest problem ...

Code Coverage Tools & Visual Studio 2008 Pro

Just wondering what people are using for code coverage tools when using MS Visual Studio 2008 Pro. We are using the built-in MS test project and unit testing tool (the one that come pre-installed ...

Unit testing. File structure

I have a C++ legacy codebase with 10-15 applications, all sharing several components. While setting up unittests for both shared components and for applications themselves, I was wondering if there ...

Unit Testing .NET 3.5 projects using MStest in VS2010

There s a bug/feature in Visual Studio 2010 where you can t create a unit test project with the 2.0 CLR. https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=483891&wa=...

Unit Test for Exceptions Message

Is there a simple (Attribute-driven) way to have the following test fail on the message of the exception. [TestMethod()] [ExpectedException(typeof(ArgumentException))] public void ExceptionTestTest() ...

热门标签