Most developers seem to agree that testing is good, but developers frequently disagree about how to test. In this article, I’ll break down some common misconceptions and hopefully teach you a few…
ClassMock is a framework that helps the creation of unit tests for components that use reflection or annotations. In this kind of classes, the behavior is dependent of the class structure. This way, each test case usually works with a different class created specifically for the test. With ClassMock is possible to define and generate classes in runtime, allowing a better test readability and logic sharing between tests.
For those of you who've got into it you'll know that test driven development is great. It gives you the confidence to change code safe in the knowledge that if something breaks you'll know about it. Except for those bits you don't know how to test. Until now XML has been one of them. Oh sure you can use "<stuff></stuff>".equals("<stuff></stuff>"); but is that really gonna work when some joker decides to output a <stuff/>? -- damned right it's not ;-)
I googled test patterns in Go, then I invoked the Spirits of the Core Library. As soon as I realised where to look at, I finally saw a sign. It was Brad Fitzpatrick.
I did a talk at TestBash Germany last week that sparked lots of positive response, but also some critique. Critique is fair: It was a 30 minute inspirational talk in which I wanted to explain why Immanuel Kant’s work “Critique of Pure Reason” matters to testers. Quite a few people found me afterwards, asked me…
Abbot helps you test your Java UI. It comprises Abbot, which lets you programmatically drive UI components, and Costello (built on Abbot) which allows you to easily launch, explore and control an application. The framework may be used with both scripts and compiled code.
AceUnit (Advanced C and Embedded Unit) ist ein komfortables Framework für Unit-Tests von C-Code. AceUnit orientiert sich am Stil von JUnit 4.x und ist einfach, modular und flexibel. AceUnit kann in Umgebungen mit geringen Ressourcen verwendet werden, beispielsweise in der Entwicklung eingebetteter Systeme.
There are a number of open-source unit testing tools available. So why another one?
Well, this one addresses a specific need - an easy way to test XML-based servers. If you have a server that communicates with clients via XML messages, you can end up putting a lot of effort into using one of the unit-testing frameworks to test all the messages. Just think of all the code needed to set up communications, construct messages, and verify responses.
A simple alternative is to document XML messages and expected responses, without having to write any code. Let XmlMessageTest send each XML message to the server, verify returned messages against expected results, and produce a simple report of test results.
XmlMessageTest is written in Java and should be able to run any Java-enabled platform. It's been tested on Windows XP and Linux. It can be easily integrated into your build process.
This short guide is intended to catch you up with the most important reasoning, terms, tools, and approaches to JavaScript testing. It combines information from many great recently written articles…
Whoever reads and understands this guide, can safely assume they know the big picture of the state of JavaScript testing in the web development community for 2018.
This guide is intended to catch you up with the state of JavaScript testing in 2019. It combines information from the best recent articles, and our own experience at Welldone Software Solutions.
AOP makes it easier than it's ever been to write tests specific to your application's crosscutting concerns. Find out why and how to do it, as Nicholas Lesiecki introduces you to the benefits of testing aspect-oriented code and presents a catalog of patte
A picture's worth a 1000 tests.
Unit testing asserts can be difficult to use. Approval tests simplify this by taking a snapshot of the results, and confirming that they have not changed.
The project specification can be defined in word processor format as you would normally. By adding some special items, such as titled bulleted lists and highlighted text items, both a test suite and glossary can be written right into the spec. The Arbiter server will parse these documents and run the tests, reporting the results into the documents themselves. This allows the client to see project process.
For many years we've been using statically typed languages for the safety they offer. But now, as we all gradually adopt Test Driven Development, are we going to find that safety redundant? Will we therefore decide that the flexibility of dynamically typed languages is desirable?
AtUnit minimizes boilerplate code in unit tests and guides test development by enforcing good practices.
* mark exactly one field with @Unit to indicate the object under test.
* mark fields with @Mock or @Stub to obtain mock objects
* inject your tests, and your test subjects, using your favorite IoC container
Mock Objects Integration
AtUnit integrates with JMock or EasyMock to provide mock objects:
* obtain a JMock context simply by declaring a field
* annotate fields with @Mock to obtain JMock or EasyMock mock objects
* annotate fields with @Stub to obtain a JMock or EasyMock stub object
... or you can use your own mock objects plug-in with two easy steps:
* implement the MockFramework interface
* annotate your tests with @MockFrameworkClass(MyMockFramework.class)
Container Integration
AtUnit integrates with Guice or Spring to take all of the work out of dependency-injected tests.
With Guice:
* never see the Injector, never write bootstrapping boilerplate!
* @Inject test class fields without even defining a Module
* declaratively obtain mock objects with @Inject @Mock
* if you need more binding flexibility, simply have your test class implement Module
With Spring:
* annotate fields with @Bean to get them from the Spring context
* fields annotated with @Bean which do not appear in your Spring context are added to it automatically! (This includes @Mock and @Stub fields.)
* AtUnit looks for a Spring XML file with the same name as your test, or you can specify the location yourself with @Context("filename")
* Most of the time, you don't even need a Spring XML file!
You can easily plug in other containers in two steps:
* implement the Container interface
* annotate your tests with @ContainerClass(MyContainer.class)
AutAT
* is an open source Eclipse plugin,
* makes test driven development of web applications easier,
* contains a rich graphical editor for specifying how web-sites should function,
* is written using the Eclipse Graphical Editing Framework (GEF),
* converts a visual representation of web tests into executable tests, and
* executes the tests and gives you direct feedback.
With so many Continuous Integration (CI) servers to choose from, it can be difficult to decide which one is right for you. In the second article of the series Automation for the people, development automation expert Paul Duvall looks at a handful of open source CI servers, including Continuum, CruiseControl, and Luntbuild, using a consistent evaluation criteria and illustrative examples.
S. Tan, D. Marinov, L. Tan, and G. Leavens. Software Testing, Verification and Validation (ICST), 2012 IEEE Fifth International Conference on, page 260-269. (April 2012)
S. Vegas, and V. Basili. Empirical Software Engineering, 10 (4):
437-466(2005)MR: Versucht die Antwort auf die Frage zu erleichtern: Wie soll indentifiziert werden, welches Testkriteria passen am besten zu meinem Testselektionsproblem?
Bei IST-SPL könnte es zur Begründung des eingesetzten Überdeckungskriteriums herangezogen werden..
M. Smucker, J. Allan, and B. Carterette. CIKM '07: Proceedings of the sixteenth ACM conference on Conference on information and knowledge management, page 623--632. New York, NY, USA, ACM, (2007)