Knapsack Pro

Lens vs NaturalSpec comparison of testing frameworks
What are the differences between Lens and NaturalSpec?

Lens

https://github.com/spencer-mortensen/lens

NaturalSpec

https://www.nuget.org/packages/NaturalSpec/
Programming language

PHP

.NET

Category

Unit Testing

Unit Testing

General info

Lens is a unit-testing framework for PHP

Lens is a unit-testing framework for PHP that needs no assertions

NaturalSpec is a .NET Unit testing framework

NaturalSpec is a .NET UnitTest framework which provides automatically testable specs in natural language. NaturalSpec is based on NUnit and completely written in F# - you don't have to learn F# to use it.
xUnit
Set of frameworks originating from SUnit (Smalltalk's testing framework). They share similar structure and functionality.

N/A

No

Client-side
Allows testing code execution on the client, such as a web browser

Yes

It can test front end components

Yes

You can test front-end components with NaturalSpecit. It is a Unit testing framework therefore you can test front-end modules and classes independently
Server-side
Allows testing the bahovior of a server-side code

Yes

It can test back-end behaviour

Yes

You can test back-end components with NaturalSpec. It is a Unit testing framework therefore you can test back-end modules and classes independently
Fixtures
Allows defining a fixed, specific states of data (fixtures) that are test-local. This ensures specific environment for a single test

N/A

N/A

Group fixtures
Allows defining a fixed, specific states of data for a group of tests (group-fixtures). This ensures specific environment for a given group of tests.

N/A

N/A

Generators
Supports data generators for tests. Data generators generate input data for test. The test is then run for each input data produced in this way.

N/A

N/A

Licence
Licence type governing the use and redistribution of the software

N/A

MIT License

Mocks
Mocks are objects that simulate the behavior of real objects. Using mocks allows testing some part of the code in isolation (with other parts mocked when needed)

N/A

Yes

Mocks are available through third party libraries like Moq
Grouping
Allows organizing tests in groups

N/A

N/A

Other
Other useful information about the testing framework