adaptivetesting is a Python package for computerized adaptive testing that can be used to simulate and implement custom adaptive tests in real-world testing scenarios.
Required Python version: >= 3.11 (other versions may work, but they are not officially supported)
pip install adaptivetesting
If you want to install the current development version, you can do so by running the following command:
pip install git+https://github.com/condecon/adaptivetesting
- IRT-Models:
- 4PL
- simplified derivates (e.g., 3PL, Rasch model)
- Ability estimators:
- Maximum Likelihood Estimation
- Bayes Modal
- Item selection algorithm:
- Urry’s rule
- Stopping criteria:
- test length
- ability estimation standard error
- Test results output formats
- SQLITE
- Pickle
- Functions and wrappers for CAT simulations and application implementations
Any functionality can be modified and extended.
The package comes with two CAT implementations that are ready to use.
Custom testing procedures can be implemented by implementing
the abstract class AdaptiveTest
.
Any existing functionality can be overridden while still
retaining full compatibility with the packages' functionality.
For more information, please consult the documentation for the AdaptiveTest
class.
submodule | description |
---|---|
data | data management and processing of test results |
implementations | concrete implementations of the adaptive process, provides actual |
math | mathematical utilities and functions, such as estimators, item selection, test information |
models | data model definitions and structures used in the package |
services | interfaces that concrete implementations inherit from |
simulations | functions and classes used in CAT simulation |
tests | Unit test for the entire package |
Extensive documentation is available in the source code, but it can also be compiled to a webpage using sphinx.