As questões de programação são criadas da mesma forma que os demais tipos de questões. No entanto, há uma ferramenta específica para a criação de questões de programação.
Para acessar essa ferramenta, vá até o menu “Ferramentas” e selecione “Criador de Questões de Programação”.
Após carregar a questão, as informações correspondentes serão exibidas. No lado direito, há um editor que permite testar como a questão avaliaria uma resposta. No lado esquerdo, encontram-se as condições (cenários de validação) utilizadas para validar a questão, divididas em duas seções. A primeira seção é usada para validar a resposta enquanto o candidato está realizando a prova. A segunda é utilizada para validar a resposta e determinar a pontuação da questão. Essa separação evita que o candidato forneça uma resposta trivial, como “Print 5”, em vez de desenvolver um algoritmo para resolver o problema proposto. Por esse motivo, é comum utilizar conjuntos diferentes de casos de teste: um para validar a resposta durante a prova e outro para atribuir a pontuação (com valores distintos). Dessa forma, o candidato não consegue obter a pontuação máxima apenas fornecendo uma resposta trivial, sem implementar a lógica necessária.
Tanto para a validação durante a prova quanto para a atribuição da pontuação, é necessário informar o valor esperado. Esse valor pode ser inserido manualmente ou você pode escrever um programa para testar a questão e, em seguida, copiar a saída gerada para o campo de resposta esperada. Você pode executar o programa com qualquer um dos cenários de validação clicando no botão Executar. Os cenários utilizados para validar o programa possuem pesos. É possível definir vários cenários diferentes, cada um com um peso específico, que indica sua importância no cálculo da pontuação final obtida pelo candidato na questão.
Por fim, para questões que permitem medir o desempenho do código, você pode indicar os intervalos e o peso do desempenho na pontuação da questão. Os cenários de validação serão utilizados para medir o desempenho que deverá ser considerado na pontuação. Atualmente, apenas as questões que utilizam o módulo TLang permitem realizar a medição de desempenho.