speaker

Myra B. Cohen

The Evolution of Search-based Software Testing

Search-based software testing (SBST) utilizes meta-heuristic search algorithms for automatically generating test cases that cover desired elements of a software application. It has evolved into a mature and important tool in the tester’s toolbox. It is being used for unit, system and configuration test generation, on a multitude of programing languages, for a variety of types of coverage, and on applications with command-line, graphical and/or mobile interfaces. In addition, SBST’s success has led to an entirely new field, that of automated program repair, or genetic improvement. In this talk I will introduce the current landscape of foundations of SBST and highlight some key points of its evolution. I will end with some thoughts on future directions for SBST.

Myra Cohen is a Professor and the Lanh and Oanh Nguyen Chair in Software Engineering in the Department of Computer Science at Iowa State University. Her research interests are in software testing of highly-configurable software, search based software engineering, applications of combinatorial designs, and synergies between software engineering, and systems and synthetic biology. She serves on many software engineering conference program committees and was the general chair of the IEEE/ACM International Conference on Automated Software Engineering (ASE), 2015, and the program co-chair of ICST 2019 and ESEC/FSE 2020. She is an ACM distinguished scientist.

speaker

Otávio Lemos

UNIFESP, SJC

Revisitando os tipos de teste

Os termos teste de unidade, teste de integração e teste end2end - enfim, as diferentes granularidades de teste - são confusos. Livros acadêmicos tentam defini-los formalmente mas, na prática, são realizados de maneira bem diversa. Nesse bate-papo procuro apresentar uma definição mais pragmática desses termos, da maneira como são utilizados na prática, afastando a confusão. Além de definir os diferentes tipos de granularidade de teste, discuto como podem ser utilizados efetivamente em um pipeline de integração e entrega contínua (CI/CD).

Desenvolvedor, pesquisador e professor de computação. Leciona há dez anos na Universidade Federal de São Paulo (UNIFESP), tem mestrado e doutorado pela Universidade de São Paulo (ICMC), e fez pós-doutorado na Universidade da Califórnia em Irvine (UCI). Na UCI, trabalhou em diferentes períodos perfazendo aproximadamente dois anos. Já apresentou seu trabalho de pesquisa no Google, na Carnegie Mellon University (CMU) e na UCI, além de em inúmeros congressos internacionais. Em 2019 iniciou seu trabalho na Internet com um canal pessoal no YouTube que cresceu rapidamente. Esse trabalho representa sua aproximação com a indústria de desenvolvimento de software, tópico pelo qual é apaixonado e procura se especializar cada vez mais. Nesse novo período tem realizado workshops, cursos, treinamentos e sessões de consultoria junto a empresas e startups de tecnologia.