@misc {26270,
	title = {Time-aware Test Execution Scheduling for Cyber-Physical Systems},
	howpublished = {Gesellschaft f{\"u}r Informatik Software Engineering Conference 2019 (SE19), Germany},
	year = {2019},
	author = {Mossige, Morten and Gotlieb, Arnaud and Spieker, Helge and Meling, Hein and Carlsson, Mats}
}
@article {25230,
	title = {Deploying Constraint Programming for Testing ABB{\textquoteright}s Painting Robots},
	journal = {AI Magazine},
	volume = {39},
	number = {2},
	year = {2017},
	note = {Column on AI in Industry},
	publisher = {AAAI},
	doi = {10.1609/aimag.v38i2.2723},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein}
}
@inproceedings {25440,
	title = {Time-aware Test Case Execution Scheduling for Cyber-Physical Systems},
	journal = {Proceedings of Principles of Constraint Programming (CP{\textquoteright}17)},
	year = {2017},
	publisher = { Springer},
	abstract = {Testing cyber-physical systems involves the execution of test cases on target-machines equipped with the latest release of a software control system. When testing industrial robots, it is common that the target machines need to share some common resources, e.g., costly hardware devices, and so there is a need to schedule test case execution on the target machines, accounting for these shared resources. With a large number of such tests executed on a regular basis, this scheduling becomes difficult to manage manually. In fact, with manual test execution planning and scheduling, some robots may remain unoccupied for long periods of time and some test cases may not be executed. This paper introduces TC-Sched, a time-aware method for automated test case execution scheduling. TC-Sched uses Constraint Programming to schedule tests to run on multiple machines constrained by the tests{\textquoteright} access to shared resources, such as measurement or networking devices. The CP model is written in SICStus Prolog and uses the Cumulatives global constraint. Given a set of test cases, a set of machines, and a set of shared resources, TC-Sched produces an execution schedule where each test is executed once with minimal time between when a source code change is committed and the test results are reported to the developer. Experiments reveal that TC-Sched can schedule 500 test cases over 100 machines in less than 4 minutes for 99.5\% of the instances. In addition, TC-Sched largely outperforms simpler methods based on a greedy algorithm and is suitable for deployment on industrial robot testing.},
	doi = {10.1007/978-3-319-66158-2_25},
	author = {Mossige, Morten and Gotlieb, Arnaud and Spieker, Helge and Meling, Hein and Carlsson, Mats}
}
@inproceedings {24476,
	title = {Generating Tests for Robotized Painting Using Constraint Programming},
	journal = {Int. Joint Conf. on Artificial Intelligence (IJCAI-16) - Sister Conference Best Paper Track},
	year = {2016},
	month = {07/2016},
	address = {New York City},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein}
}
@inproceedings {24017,
	title = {Optimal Test Execution Scheduling on Multiple Machines with Resource Constraints},
	journal = {Submitted},
	year = {2016},
	abstract = {When testing large-scale systems with hundreds of test cases in continuous integration, it is crucial to minimize the round-trip time, that is, the time from when a source code change is committed until the test results are reported back to the developer. To this end, scheduling as many test case executions as possible in the minimum amount of time is essential to increasing the effectiveness of continuous integration. This paper introduces TSNIC, a time-aware method for test execution scheduling on multiple machines with constraints on accessible resources, such as measurement devices or network equipment. The method uses as input a test suite, a set of machines, and a set of shared resources and produces an execution schedule. The schedule guarantees that each test will be executed once and minimizes the round-trip time. TSNIC has undergone extensive experimental evaluation using generated test suites derived from existing industrial test suites augmented with randomly-selected values. Our results provide evidence that TSNIC conducts effective test execution scheduling and is suitable for deployment in continuous integration. In particular, we show that automatic optimal scheduling of 500 test cases over 100 machines is reacheable in less than 4 minutes for 96.6\% of the instances.},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein and Carlsson, Mats}
}
@article {23398,
	title = {Testing Robot Controllers using Constraint Programming and Continuous Integration},
	journal = {Information and Software Technology},
	volume = {57},
	year = {2015},
	month = {01/2015},
	pages = {169-185},
	publisher = {Elsevier},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein}
}
@inproceedings {Simula.simula.2852,
	title = {Testing Robotized Paint System Using Constraint Programming: an Industrial Case Study},
	journal = {Proceedings of IFIP Int. Conf. on Testing Software and Systems (ICTSS{\textquoteright}14), Madrid, Spain, Sep. 2014 - Application Track},
	year = {2014},
	publisher = {LNCS},
	type = {1},
	address = {Berlin, Heidelberg},
	keywords = {Conference},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein}
}
@inproceedings {Simula.simula.2850,
	title = {Using CP in Automatic Test Generation for ABB Robotics{\textquoteright} Paint Control System},
	journal = {Proceedings of Principles of Constraint Programming (CP{\textquoteright}14), Lyon, France, Sep. 2014 - Best Application Track Paper},
	year = {2014},
	publisher = {LNCS},
	type = {Conference},
	address = {Zwitzerland},
	keywords = {Conference},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein}
}
@inproceedings {Simula.simula.2622,
	title = {Test Generation for Robotized Paint Systems Using Constraint Programming in a Continuous Integration Environment},
	journal = {IEEE ICST 2013  (2 pages)},
	year = {2013},
	month = {April},
	pages = {489-290},
	publisher = {IEEE},
	type = {Conference},
	address = {Luxembourg},
	author = {Mossige, Morten and Gotlieb, Arnaud and Meling, Hein},
	editor = {IEEE, }
}
