Using CP in Automatic Test Generation for ABB Robotics’ Paint Control System

  • Morten Mossige
  • Arnaud Gotlieb
  • Hein Meling
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8656)


Designing industrial robot systems for welding, painting, and assembly, is challenging because they are required to perform with high precision, speed, and endurance. ABB Robotics has specialized in building highly reliable and safe robotized paint systems based on an integrated process control system. However, current validation practices are primarily limited to manually designed test scenarios. A tricky part of this validation concerns testing the timing aspects of the control system, which is particularly challenging for paint robots that need to coordinate paint activation with the robot motion control.

To overcome these challenges, we have developed and deployed a costeffective, automated test generation technique based on Constraint Programming, aimed at validating the timing behavior of the process control system. We designed a constraint optimization model in SICStus Prolog, using arithmetic and logic constraints including use of global constraints. This model has been integrated into a fully automated continuous integration environment, allowing the model to be solved on demand prior to test execution, which allows us to obtain the most optimal and diverse set of test scenarios for the present system configuration.

After three months of daily operational use of the constraint model in our testing process, we have collected data on its performance and bug finding capabilities. We report on these aspects, along with our experiences and the improvements gained by the new testing process.


Constraint Programming Test Scenario Global Constraint Process Control System Test Execution 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Fowler, M., Foemmel, M.: Continuous integration (2006) (accessed August 13, 2013)Google Scholar
  2. 2.
    Mossige, M., Gotlieb, A., Meling, H.: Poster: Test generation for robotized paint systems using constraint programming in a continuous integration environment. In: 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation (ICST), pp. 489–490 (2013)Google Scholar
  3. 3.
    Carlsson, M., Ottosson, G., Carlson, B.: An open-ended finite domain constraint solver. In: Glaser, H., Hartel, P., Kuchen, H. (eds.) PLILP 1997. LNCS, vol. 1292, pp. 191–206. Springer, Heidelberg (1997)Google Scholar
  4. 4.
    Di Alesio, S., Nejati, S., Briand, L., Gotlieb, A.: Stress testing of task deadlines: A constraint programming approach. In: 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE), pp. 158–167. IEEE (2013)Google Scholar
  5. 5.
    Balck, K., Grinchtein, O., Pearson, J.: Model-based protocol log generation for testing a telecommunication test harness using CLP. In: Design, Automation and Test in Europe Conference and Exhibition (DATE), pp. 1–4 (2014)Google Scholar
  6. 6.
    Stolberg, S.: Enabling agile testing through continuous integration. In: Agile Conference, AGILE 2009, pp. 369–374. IEEE (2009)Google Scholar
  7. 7.
    Marriott, K., Stuckey, P.J.: Programming with constraints: an introduction. MIT Press (1998)Google Scholar
  8. 8.
    Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan Kaufmann Publishers Inc., San Francisco (2007)Google Scholar
  9. 9.
    Régin, J.C.: The global minimum distance constraint. Technical report, Technical report, ILOG (1997)Google Scholar
  10. 10.
    Mossige, M.: Prolog Model of ABB’s Paint Control System for test case generation (2014),
  11. 11.
    de Moura, L., Bjørner, N.S.: Z3: An efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    McMinn, P.: Search-based software test data generation: A survey. Software Testing, Verification and Reliability 14, 105–156 (2004)CrossRefGoogle Scholar
  13. 13.
    IBM, ILOG Labs, I.: IBM CPLEX: High-performance software for mathematical programming and optimization (2006),
  14. 14.
    Rossi, F., Beek, P.V., Walsh, T.: Handbook of Constraint Programming (Foundations of Artificial Intelligence). Elsevier Science Inc., New York (2006)Google Scholar
  15. 15.
    de la Banda, M.G., Stuckey, P.J., Van Hentenryck, P., Wallace, M.: The future of optimization technology. Constraints, 1–13 (2013)Google Scholar
  16. 16.
    Francis, K., Brand, S., Stuckey, P.: Optimisation modelling for software developers. In: Milano, M. (ed.) CP 2012. LNCS, vol. 7514, pp. 274–289. Springer, Heidelberg (2012)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Morten Mossige
    • 1
    • 3
  • Arnaud Gotlieb
    • 2
  • Hein Meling
    • 3
  1. 1.ABB RoboticsNorway
  2. 2.Simula Research LaboratoryNorway
  3. 3.University of StavangerNorway

Personalised recommendations