The invention includes two methods for testing a spreadsheet region.
Du-associations are collected for the spreadsheet region. In the
Straightforward approach, du-associations are collected for each cell in
the region. Each cell's execution trace is tracked. After the user
validates a cell, the du-associations for the cell that participated in
the execution trace are marked as executed. In the Region Representative
approach, a region representative represents the region. Each cell's
execution trace is tracked. After the user validates a cell, the
du-associations for the region representative that participated in the
execution trace for the validated cell are marked as executed.
Du-associations for other cells that are affected by the testing of a
spreadsheet region are similarly marked as covered. If the user changes a
shared non-constant formula, the collected du-associations for the region
are discarded and the steps of collecting test elements and tracking
execution traces are repeated. Cells that depend on the changed cell also
partially discard and collect anew test elements and repeat the tracking
step. The invention also includes a method for providing a user with
feedback of the testedness of the spreadsheet region. The du-associations
for each region are maintained, and the subset of du-associations that
have been covered is identified. Using the numbers of tested and untested
du-associations, a testedness measure is calculated for the cell, which is
provided to the user.
A invenção inclui dois métodos para testar uma região do spreadsheet. as Du-associações são coletadas para a região do spreadsheet. Na aproximação direta, as du-associações são coletadas para cada pilha na região. O traço da execução de cada pilha é seguido. Depois que o usuário valida uma pilha, as du-associações para a pilha que participou no traço da execução estão marcadas como executadas. Na aproximação representativa da região, um representante da região representa a região. O traço da execução de cada pilha é seguido. Depois que o usuário valida uma pilha, as du-associações para o representante da região que participou no traço da execução para a pilha validada estão marcadas como executadas. as Du-associações para outras pilhas que são afetadas testar de uma região do spreadsheet são marcadas similarmente como cobertas. Se o usuário mudar uma fórmula non-constante compartilhada, as du-associações coletadas para a região estão rejeitadas e as etapas de coletar elementos do teste e de seguir traços da execução são repetidas. As pilhas que dependem da pilha mudada também parcialmente rejeitam e coletam anew elementos do teste e repetem a etapa seguindo. A invenção inclui também um método para fornecer um usuário com o gabarito do testedness da região do spreadsheet. As du-associações para cada região são mantidas, e o subconjunto das du-associações que foram cobertas é identificado. Usando os números de du-associações testadas e untested, uma medida do testedness é calculada para a pilha, que é fornecida ao usuário.