BE1023170B1 - EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE - Google Patents

EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE Download PDF

Info

Publication number
BE1023170B1
BE1023170B1 BE2015/5463A BE201505463A BE1023170B1 BE 1023170 B1 BE1023170 B1 BE 1023170B1 BE 2015/5463 A BE2015/5463 A BE 2015/5463A BE 201505463 A BE201505463 A BE 201505463A BE 1023170 B1 BE1023170 B1 BE 1023170B1
Authority
BE
Belgium
Prior art keywords
application
computer
state
functions
command
Prior art date
Application number
BE2015/5463A
Other languages
Dutch (nl)
Inventor
SMEDT Sven DE
Katrin BOERMANS
Original Assignee
Nikos Bvba
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nikos Bvba filed Critical Nikos Bvba
Priority to BE2015/5463A priority Critical patent/BE1023170B1/en
Application granted granted Critical
Publication of BE1023170B1 publication Critical patent/BE1023170B1/en

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming

Abstract

De uitvinding voorziet in een werkwijze voor het testen van kennis van een computergebruiker over een eerste computerapplicatie omvattende volgende stappen uitgevoerd door een tweede computerapplicatie. Eerst het ophalen van een vraag (110) uit een vragendatabank (102) omvattende een opdracht (120) uit te voeren door de computergebruiker en oproepen (122) naar verificatiefuncties. Dan, na het uitvoeren van de opdracht (120) door de gebruiker, het verifiëren van de opdracht door het uitvoeren van de één of meerdere verificatiefuncties verder omvattende het aanroepen van Application Programming Interface of API functies in de eerste computerapplicatie om te verifiëren of de toestand van de eerste computerapplicatie overeenkomt met een gewenste toestand na het uitvoeren van de opdracht.The invention provides a method for testing a computer user's knowledge of a first computer application, comprising subsequent steps performed by a second computer application. First, retrieving a query (110) from a query database (102) comprising an order (120) to be executed by the computer user and calls (122) for authentication functions. Then, after executing the command (120) by the user, verifying the command by executing the one or more verification functions further comprising calling Application Programming Interface or API functions in the first computer application to verify that the state of the first computer application corresponds to a desired state after execution of the command.

Description

ONDERVRAGINGSAPPLICATIE VOOR HET TESTEN VAN COMPUTERKENNISEXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE

TECHNISCH DOMEIN VAN DE UITVINDINGTECHNICAL DOMAIN OF THE INVENTION

[01] De uitvinding heeft betrekking op het domein van e-learning of het door middel van computersysteem aanleren en ondervragen van vaardigheden. Meer bepaald heeft de uitvinding betrekking op computerapplicaties die gebruikers testen op het gebruik van andere computerapplicaties. Dit testen omvat dan het aanreiken van een uit te voeren opdracht aan de gebruiker en het nadien verifiëren van de uitgevoerde opdracht door deze te vergelijken met een gewenst resultaat.The invention relates to the field of e-learning or computer system learning and questioning. More specifically, the invention relates to computer applications that test users for the use of other computer applications. This testing then comprises providing the user with a command to be executed and subsequently verifying the command executed by comparing it with a desired result.

[02] De computerapplicatie die de gebruiker test wordt doorheen volgende beschrijving aangeduid als de ondervragingsapplicatie. The computerapplicatie waarop de gebruiker wordt getest wordt aangeduid als de bevraagde applicatie.The computer application testing the user is referred to as the interrogation application throughout the following description. The computer application on which the user is tested is referred to as the requested application.

[03] Bij de ondervragingsapplicaties in het domein van de uitvinding krijgt de gebruiker of ondervraagde een vraag in de vorm van een opdracht voorgeschoteld door deze ondervragingsapplicatie. Deze opdracht dient hij dan uit te voeren in de bevraagde applicatie. Na het uitvoeren van de opdracht verifieert de ondervragingsapplicatie dan of de opdracht correct werd uitgevoerd. Een opdracht kan bijvoorbeeld betrekking hebben op het aanpassen van gegevens in een bestand dat in de te bevragen applicatie wordt ingeladen of op het aanpassen van de gebruikersomgeving in de bevraagde applicatie.In the interrogation applications in the domain of the invention, the user or interrogator receives a query in the form of a command presented by this interrogation application. He must then execute this assignment in the requested application. After executing the assignment, the interrogation application then verifies whether the assignment was executed correctly. For example, an assignment may relate to the modification of data in a file that is loaded into the application to be queried or to the adjustment of the user environment in the requested application.

ACHTERGROND VAN DE UITVINDINGBACKGROUND OF THE INVENTION

[04] Het geautomatiseerd aanleren en testen van kennis door middel van computers heeft het afgelopen decennia reeds zijn intrede gemaakt. Vooral voor het aanleren en testen van kennis omtrent het gebruik van de computer zelf is dit uitermate doeltreffend. Hierbij krijgt de gebruiker of dus de ondervraagde via een ondervragingsapplicatie enkele vragen voorgeschoteld die hij dient uit te voeren op een computer, typisch in een bepaalde bevraagde applicatie zoals bijvoorbeeld een rekenblad applicatie, een applicatie voor tekstverwerking, een email applicatie of een presentatieapplicatie.[04] The automated acquisition and testing of knowledge by means of computers has already made its debut in recent decades. This is particularly effective for learning and testing knowledge about the use of the computer itself. Here, the user or the person interviewed is presented with a series of questions via an interrogation application that he must perform on a computer, typically in a particular requested application such as, for example, a spreadsheet application, a text processing application, an email application or a presentation application.

[05] Om dit praktisch te realiseren komen echter verschillende problemen naar boven.[05] To realize this practically, however, various problems arise.

[06] Eerst en vooral dient de ondervragingsapplicatie overweg te kunnen met verschillende versies van de bevraagde applicatie en liefst zelfs met gelijkaardige bevraagde applicaties die op verschillende besturingssystemen kunnen draaien. Zo zijn er bijvoorbeeld verschillende versies van Microsoft Office in omloop die dan nog eens beschikbaar zijn zowel voor het Windows besturingssysteem van Microsoft als voor het Mac OS besturingssysteem van Apple. Verder zijn er soms ook voor een bepaald type bevraagde applicatie, d.i., een applicatie die dezelfde functionaliteit aanbied en dus dezelfde kennis vereist, verschillende uitvoeringen aangeboden door verschillende aanbieders. Zo biedt bijvoorbeeld Microsoft een rekenblad applicatie aan onder de naam Excel terwijl er ook OpenOffice.org Calc en LibreOffice Calc beschikbaar is. Al deze rekenblad applicaties kunnen echter overweg met dezelfde rekenblad bestanden en bieden een vrijwel gelijkaardige gebruikersomgeving. Hierdoor kan de kennis van de gebruiker dus wel getoetst worden volgens een bepaalde opdracht in gelijk welke versies van de bevraagde applicatie onafhankelijk van de aanbieder. Er is dus een nood aan een ondervragingsapplicatie die overweg kan met deze verscheidenheid aan bevraagde applicaties.[06] First and foremost, the interrogation application should be able to handle different versions of the requested application and preferably even similar requested applications that can run on different operating systems. For example, there are different versions of Microsoft Office in circulation that are then available for both the Windows operating system from Microsoft and for the Mac OS operating system from Apple. Furthermore, sometimes for a certain type of application, i.e. an application that offers the same functionality and therefore requires the same knowledge, there are different versions offered by different providers. For example, Microsoft offers a spreadsheet application under the name Excel, while OpenOffice.org Calc and LibreOffice Calc are also available. However, all these spreadsheet applications can handle the same spreadsheet files and offer a similar user environment. As a result, the knowledge of the user can therefore be tested according to a specific assignment in any versions of the requested application independently of the provider. So there is a need for an interrogation application that can handle this variety of queried applications.

[07] Het bovenstaand probleem vertaalt zich ook direct naar een probleem in het implementeren van manieren om de antwoorden te verifiëren. De opsteller van de vraag, typisch iemand met een educatieve achtergrond, wil immers niet geconfronteerd worden met de manier waarop de vraag moet geverifieerd worden.[07] The above problem also translates directly into a problem in implementing ways to verify the answers. The author of the question, typically someone with an educational background, does not want to be confronted with the way in which the question must be verified.

Hij wil enkel het juiste antwoord aangeven zonder zich om de verdere technische details te hoeven bekommeren.He only wants to indicate the correct answer without having to worry about further technical details.

SAMENVATTING VAN DE UITVINDINGSUMMARY OF THE INVENTION

[08] Bovenstaande problemen worden opgelost door de onderhavige uitvinding die volgens een eerste aspect voorziet in een computer geïmplementeerde werkwijze voor het testen van kennis van een computergebruiker over een eerste computerapplicatie omvattende de volgende stappen uitgevoerd door een tweede computerapplicatie: - het ophalen van een vraag uit een vragendatabank omvattende: a) een opdracht uit te voeren door de computergebruiker in de eerste computerapplicatie; b) één of meerdere oproepen naar respectievelijk één of meerdere verificatiefuncties; - na het uitvoeren van de opdracht door de gebruiker, het verifiëren van de opdracht door het uitvoeren van de één of meerdere verificatiefuncties; waarbij het uitvoeren van een verificatiefunctie verder omvat: - het verder aanroepen van Application Programming Interface of API functies in de eerste computerapplicatie om te verifiëren of de toestand van de eerste computerapplicatie overeenkomt met een gewenste toestand na het uitvoeren van de opdracht.The above problems are solved by the present invention which according to a first aspect provides a computer implemented method for testing knowledge of a computer user about a first computer application comprising the following steps performed by a second computer application: - retrieving a query from a query database comprising: a) a command to be executed by the computer user in the first computer application; b) one or more calls to one or more verification functions respectively; - after the user has executed the assignment, verifying the assignment by performing the one or more verification functions; wherein performing a verification function further comprises: - further invoking Application Programming Interface or API functions in the first computer application to verify whether the state of the first computer application corresponds to a desired state after executing the command.

[09] De eerste computerapplicatie komt dus overeen met de bevraagde applicatie en de tweede computerapplicatie komt dus overeen met de ondervragingsapplicatie. De verificatie van de opdracht gebeurt door het oproepen van de verificatiefuncties. M.a.w. door het selecteren van de verificatiefuncties kan een vraagsteller dus aangeven wat er dient geverifieerd te worden in de bevraagde applicatie. De specifiek gewenste toestand kan dan bijvoorbeeld verder meegegeven worden met de verificatiefunctie als argument.[09] The first computer application thus corresponds to the requested application and the second computer application thus corresponds to the interrogation application. The verification of the assignment is done by calling up the verification functions. M.a.w. by selecting the verification functions, a questioner can therefore indicate what needs to be verified in the requested application. The specific desired state can then, for example, be added further with the verification function as an argument.

[10] Het is een voordeel dat gebruik gemaakt wordt van verificatiefuncties om de gewenste toestand te controleren terwijl de specifieke programmatuur om dit uit te voeren verborgen blijft. Op deze manier kan dezelfde verificatiefunctie gebruikt worden voor verschillende versies van de bevraagde applicatie, voor verschillende bevraagde applicaties met eenzelfde functionaliteit maar met een totaal andere interface of dus API en voor verschillende besturingssystemen. Voor al deze opties kan telkens dezelfde vraag gebruikt worden, enkel het uitvoeren van de verificatiefuncties dient dan eventueel te wijzigen. Dit kan bijvoorbeeld door het beschikbaar stellen van verschillende software bibliotheken die door de ondervragingsapplicatie worden aangeroepen voor de verschillende versies van de bevraagde applicatie of voor de verschillende besturingssysteem waarop de bevraagde applicatie wordt uitgevoerd. Het is dus een voordeel dat vragen, d.i., een opdracht samen met de verificatie, herbruikbaar zijn over verschillende besturingssystemen, over verschillende versies van de bevraagde applicatie en over bevraagde applicaties van verschillende aanbieders die eenzelfde functionaliteit aanbieden.[10] It is an advantage that use is made of verification functions to check the desired state while the specific software for executing this remains hidden. In this way the same authentication function can be used for different versions of the requested application, for different requested applications with the same functionality but with a completely different interface or API and for different operating systems. The same question can be used for all of these options, only the performance of the verification functions may have to change. This can be done, for example, by making available different software libraries that are called by the interrogation application for the different versions of the requested application or for the different operating system on which the requested application is run. It is therefore an advantage that questions, i.e. an assignment together with verification, are reusable over different operating systems, over different versions of the requested application and about requested applications from different providers that offer the same functionality.

[11] De bevraagde applicatie kan bijvoorbeeld een applicatie zijn uit de groep van een rekenblad applicatie, een applicatie voor tekstverwerking, een email applicatie, een database applicatie en een presentatieapplicatie [12] Volgens een uitvoeringsvorm omvat de werkwijze verder: - het inladen van een eerste databestand in de eerste applicatie; en waarbij de opdracht acties oplijst die moeten uitgevoerd worden op de gegevens van het eerste databestand door middel van de eerste applicatie; en waarbij het verder aanroepen van API functies verder omvat: - het verifiëren of de gegevens werden aangepast via de eerste applicatie.[11] The requested application may for example be an application from the group of a spreadsheet application, an application for word processing, an email application, a database application and a presentation application. [12] According to an embodiment the method further comprises: - loading a first data file in the first application; and wherein the command lists actions to be performed on the data of the first data file through the first application; and wherein further invoking API functions further comprises: - verifying whether the data was modified via the first application.

[13] Het is dus een voordeel dat op deze manier kennis kan worden getest naar het verwerken van gegevens binnen de eerste applicatie. Ook hier is het een voordeel dat het verifiëren via de applicatie-onafhankelijke verificatiefuncties kan gebeuren. Dit zorgt verder voor een bijkomende diversificatie van de opdracht. Zo kan gebruik gemaakt worden van verschillende databestanden afhankelijk van het type opdracht.[13] It is therefore an advantage that knowledge can be tested in this way to process data within the first application. Here too it is an advantage that verification can be done via the application-independent verification functions. This also ensures additional diversification of the assignment. For example, different data files can be used depending on the type of assignment.

[14] Volgens een uitvoeringsvorm omvat de vraag verder: c) één of meerdere oproepen naar respectievelijk één of meerdere toestandsfuncties om de eerste applicatie op voorhand in een vooraf gedefinieerde toestand te brengen; en waarbij de werkwijze verder het uitvoeren van de één of meerdere toestandsfuncties omvat; en waarbij het uitvoeren van de één of meerdere toestandsfuncties omvat: - het verder aanroepen van Application Programming Interface of API functies in de eerste computerapplicatie om de eerste applicatie in de vooraf gedefinieerde toestand te brengen.[14] According to an embodiment, the query further comprises: c) one or more calls to one or more state functions, respectively, to bring the first application to a predefined state in advance; and wherein the method further comprises performing the one or more state functions; and wherein performing the one or more state functions comprises: - further invoking Application Programming Interface or API functions in the first computer application to bring the first application into the predefined state.

[15] Het is op voorhand niet altijd geweten in welke toestand de eerste applicatie zich bevindt. De toestand kan hierbij bijvoorbeeld overeenkomen met de gebruikersomgeving van de eerste applicatie. Zo kan bijvoorbeeld naargelang de versie, aanbieder, besturingssysteem en ingestelde gebruikersvoorkeuren van de eerste applicatie, de toestand van de applicatie verschillen. Het daarom een voordeel dat via de toestandsfuncties de eerste applicatie in een vooraf gedefinieerde toestand wordt gebracht. Het is een verder voordeel dat deze vooraf gedefinieerde toestand kan opgegeven worden met de vraag onafhankelijk van de versie, de aanbieder en het besturingssysteem van de eerste applicatie. De toestand kan hierbij overeenkomen met instellingen of voorkeuren die het functioneren en de weergave van de eerste applicatie beïnvloeden.[15] It is not always known in advance in which state the first application is. The condition may, for example, correspond to the user environment of the first application. For example, depending on the version, provider, operating system and set user preferences of the first application, the state of the application may differ. It is therefore an advantage that the first application is brought into a predefined state via the state functions. It is a further advantage that this predefined state can be specified with demand independent of the version, provider and operating system of the first application. The condition can correspond with settings or preferences that influence the functioning and the display of the first application.

[16] Volgens een verdere uitvoeringsvorm lijst de opdracht acties op die moeten uitgevoerd worden om een gebruikersomgeving van de eerste applicatie van een eerste naar een tweede toestand te brengen; en waarbij de vooraf gedefinieerde toestand overeenkomt met de eerste toestand; en waarbij het uitvoeren van een verificatiefunctie verder omvat: - het verder aanroepen van API functies in de eerste computerapplicatie om te verifiëren of de gebruikersomgeving in de tweede toestand is gebracht.[16] According to a further embodiment, the command lists actions to be performed to bring a user environment of the first application from a first to a second state; and wherein the predefined state corresponds to the first state; and wherein performing a verification function further comprises: - further calling API functions in the first computer application to verify whether the user environment is in the second state.

[17] Het is dus een voordeel dat via de toestandsfuncties, vragen over het aanpassen van de gebruikersomgeving geverifieerd kunnen worden vanuit de tweede applicatie. Het is een verder voordeel dat zo’n vraag kan opgesteld worden onafhankelijk van de versie, de aanbieder en het besturingssysteem van de eerste applicatie. De gebruikersomgeving is hierbij het geheel aan elementen in de eerste applicatie die via instellingen door de gebruiker kunnen aangepast worden.[17] It is therefore an advantage that via the state functions, questions about adapting the user environment can be verified from the second application. It is a further advantage that such a question can be created independently of the version, the provider and the operating system of the first application. The user environment is the set of elements in the first application that can be adjusted by the user through settings.

[18] In een tweede aspect wordt voorzien in een computerprogrammaproduct omvattende op een computer uitvoerbare instructies voor het uitvoeren van de werkwijze volgens het eerste aspect, wanneer het computerprogrammaproduct op een computer wordt uitgevoerd.In a second aspect, a computer program product is provided comprising computer-executable instructions for performing the method of the first aspect when the computer program product is run on a computer.

[19] In een derde aspect wordt voorzien in een computer-leesbaar opslagmedium dat het computerprogrammaproduct volgens het tweede aspect omvat.[19] In a third aspect, a computer-readable storage medium is provided that comprises the computer program product according to the second aspect.

[20] In een vierde aspect wordt voorzien in een gegevensverwerkingssysteem dat is geprogrammeerd voor het uitvoeren van de werkwijze volgens het eerste aspect.[20] In a fourth aspect, a data processing system is provided that is programmed to perform the method according to the first aspect.

KORTE BESCHRIJVING VAN DE FIGURENBRIEF DESCRIPTION OF THE FIGURES

[21] Figuur 1 toont schematisch de datastructuur van een test omvattende één of meerdere vragen volgens een uitvoeringsvorm van de onderhavige uitvinding; en [22] Figuur 2 illustreert een schermafdruk met daarin de ondervragingsapplicatie en de bevraagde applicatie volgens een uitvoeringsvorm van de onderhavige uitvinding; en [23] Figuur 3 toont stappen uitgevoerd door een ondervragingsapplicatie volgens een uitvoeringsvorm van de onderhavige uitvinding.[21] Figure 1 schematically shows the data structure of a test comprising one or more questions according to an embodiment of the present invention; and [22] Figure 2 illustrates a screen shot containing the interrogation application and the requested application according to an embodiment of the present invention; and [23] Figure 3 shows steps performed by an interrogation application according to an embodiment of the present invention.

GEDETAILLEERDE BESCHRIJVING VAN UITVOERINGSVORMENDETAILED DESCRIPTION OF EMBODIMENTS

[24] Figuur 3 illustreert stappen uitgevoerd door een ondervragingsapplicatie op een computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding. Door deze stappen uit te voeren kan een gebruiker van het computersysteem, d.i., de ondervraagde, een test uitvoeren die de gebruiker test naar zijn kennis van een bevraagde applicatie. Deze bevraagde applicatie wordt eveneens op dit computersysteem uitgevoerd. Deze stappen worden verder geïllustreerd aan de hand van Figuur 1 en Figuur 2. Figuur 1 illustreert de datastructuur van een test 101 zoals uitgevoerd door de gebruiker bij het doorlopen van de stappen in Figuur 3. Figuur 2 illustreert dan weer een schermafdruk 201 van een scherm horende bij het computersysteem bij het uitvoeren van de test.[24] Figure 3 illustrates steps performed by an interrogation application on a computer system according to an embodiment of the present invention. By performing these steps, a user of the computer system, i.e., the respondent, can perform a test that tests the user's knowledge of a requested application. This requested application is also executed on this computer system. These steps are further illustrated with reference to Figure 1 and Figure 2. Figure 1 illustrates the data structure of a test 101 as performed by the user when completing the steps in Figure 3. Figure 2 then illustrates a screen shot 201 of a screen associated with the computer system when performing the test.

[25] In een eerste stap 301 wordt de test 101 opgehaald uit een vragendatabank 102. De vragendatabank 102 kan zich lokaal op het computersysteem van de gebruiker bevinden. De vragendatabank 102 kan zich op ook op een ander computersysteem bevinden, waarbij het computersysteem dan de test 101 ophaalt door een netwerkverbinding te maken met de vragendatabank 102 en dan de test 101 lokaal op te slaan hetzij in een permanent of tijdelijk geheugen van computersysteem.[25] In a first step 301, the test 101 is retrieved from a query database 102. The query database 102 may be located locally on the user's computer system. The query database 102 can also be on another computer system, the computer system then retrieving the test 101 by making a network connection with the query database 102 and then storing the test 101 locally either in a permanent or temporary memory of computer system.

[26] In een volgende stap 302 opent de ondervragingsapplicatie dan de bevraagde applicatie. Alternatief kan deze ook op andere momenten uitgevoerd worden zolang de bevraagde applicatie maar geopend is vooraleer een desbetreffende opdracht over de bevraagde applicatie aan de gebruiker wordt gegeven. Schermafdruk 201 toont een voorbeeld van zo’n geopende bevraagde applicatie 202.[26] In a subsequent step 302, the interrogation application then opens the requested application. Alternatively, this can also be performed at other times as long as the requested application is open before a corresponding command is given to the user about the requested application. Screenshot 201 shows an example of such an open requested application 202.

[27] De test 101 omvat verder één of meerdere vragen 110 tot 113. In een volgende stap 303 wordt één van deze vragen opgehaald door de ondervragingsapplicatie naar gelang de vraag die aan de beurt is. Een vraag 110 bevat dan de volgende elementen: - De eigenlijke opdracht 120 die aan de gebruiker zal gesteld worden. Dit kan bijvoorbeeld een stukje tekst zijn of afbeeldingen of een combinatie van beide. De opdracht 120 kan ook in de vraag 110 omvat zijn met behulp van links of URLs naar tekstbestanden en/of afbeeldingen; - Optioneel, één of meerdere aanroepen 121 naar toestandsfuncties om de toestand van de bevraagde applicatie te wijzigen. Hiermee kunnen bijvoorbeeld elementen van de gebruikersomgeving van de ondervraagde applicatie gewijzigd worden. Verder in deze beschrijving worden nog specifieke voorbeelden van toestandsfuncties gegeven. - Optioneel, één of meerdere aanroepen 123 naar bestandsfuncties om een bepaald databestand in de bevraagde applicatie te laden. - Eén of meerdere aanroepen 122 naar verificatiefuncties. Hierbij geeft de verificatiefunctie aan wat moet gecontroleerd worden binnen de ondervraagde applicatie nadat de gebruiker de opdracht 120 heeft uitgevoerd. M.a.w., een verificatiefunctie is een controlefunctie om te verifiëren of de bevraagde applicatie in de gewenste toestand is en dus of de gebruiker de opdracht juist heeft uitgevoerd. Een verificatiefunctie geeft dus een resultaat terug dat volledig of gedeeltelijk het resultaat op de beantwoordde opdracht bepaalt. Verder in deze beschrijving worden nog specifieke voorbeelden van verificatiefuncties gegeven.[27] The test 101 further comprises one or more questions 110 to 113. In a subsequent step 303, one of these questions is retrieved by the interrogation application according to the question at hand. A question 110 then contains the following elements: - The actual command 120 that will be given to the user. This can for example be a piece of text or images or a combination of both. The command 120 can also be included in the query 110 by means of links or URLs to text files and / or images; Optionally, one or more calls 121 to state functions to change the state of the requested application. For example, this allows elements of the user environment of the surveyed application to be changed. Further in this description specific examples of state functions are given. - Optionally, one or more calls 123 to file functions to load a specific data file into the requested application. - One or more calls 122 to verification functions. Here, the verification function indicates what must be checked within the surveyed application after the user has executed the command 120. In other words, a verification function is a checking function to verify whether the requested application is in the desired state and thus whether the user has executed the command correctly. A verification function therefore returns a result that fully or partially determines the result on the answered assignment. Further in this description specific examples of verification functions are given.

[28] In stap 304 wordt dan, indien nodig, de toestand van de bevraagde applicatie in de gewenste toestand gebracht. Dit gebeurt door de aanroepen 121 naar de toestandsfuncties uit te voeren. Voor het uitvoeren van de toestandsfuncties haalt de ondervragingsapplicatie een implementatie van de toestandsfunctie op uit de bibliotheek 130. Bibliotheek 130 bevat dan de uitvoerbare instructies voor het uitvoeren van de toestandsfuncties. Bibliotheek 130 kan hierbij verschillen afhankelijk van het besturingssysteem van het computersysteem waarop de ondervragingsapplicatie wordt uitgevoerd, afhankelijk van de leverancier of aanbieder van de bevraagde applicatie en van de versie van de bevraagde applicatie. De geschikte bibliotheek 130 kan geselecteerd worden door al deze afhankelijkheden na te gaan bij het installeren van de ondervragingsapplicatie op het computersysteem. Verder kunnen deze afhankelijkheden nogmaals geverifieerd worden voor het ophalen van de test in stap 301. Eventueel kan dan een nieuwe of andere versie van de bibliotheek 130 geïnstalleerd worden op het computersysteem. Dit kan gebeuren door de geschikte bibliotheek op te halen van een ander computersysteem over een computernetwerk zoals een LAN of Local Area Network of een WAN of Wide Area Network. Bibliotheek 130 kan verder uitgevoerd zijn als een ‘dll’ of Dynamic Link Library indien het computersysteem Microsoft Windows als besturingssysteem heeft.[28] In step 304, if necessary, the state of the requested application is brought to the desired state. This is done by executing calls 121 to the state functions. To perform the state functions, the interrogation application retrieves an implementation of the state function from the library 130. Library 130 then contains the executable instructions for performing the state functions. Library 130 may differ depending on the operating system of the computer system on which the interrogation application is run, depending on the supplier or provider of the requested application and the version of the requested application. The appropriate library 130 can be selected by checking all of these dependencies when installing the interrogation application on the computer system. Furthermore, these dependencies can be re-verified for retrieving the test in step 301. Optionally, a new or different version of the library 130 can then be installed on the computer system. This can be done by retrieving the appropriate library from another computer system over a computer network such as a LAN or Local Area Network or a WAN or Wide Area Network. Library 130 can further be implemented as a "dll" or Dynamic Link Library if the computer system has Microsoft Windows as the operating system.

[29] In stap 305 wordt dan optioneel een databestand ingeladen in de bevraagde applicatie door de aanroepen 123 naar de bestandsfuncties uit te voeren. Voor het uitvoeren van de aanroepen 123 haalt de ondervragingsapplicatie een implementatie van de aan te roepen functies op uit de bibliotheek 150. Dit is analoog aan de procedure voor het uitvoeren van de toestandsfuncties door middel van bibliotheek 130. Bibliotheek 150 bevat dan de uitvoerbare instructies voor het uitvoeren van de bestandsfuncties. Bibliotheek 150 kan hierbij verschillen afhankelijk van het besturingssysteem van het computersysteem waarop de ondervragingsapplicatie wordt uitgevoerd, afhankelijk van de leverancier van de bevraagde applicatie en van de versie van de bevraagde applicatie. De geschikte bibliotheek 150 kan geselecteerd worden door al deze afhankelijkheden na te gaan bij het installeren van de ondervragingsapplicatie op het computersysteem. Verder kunnen deze afhankelijkheden nogmaals geverifieerd worden voor het ophalen van de test in stap 301. Eventueel kan dan een nieuwe of andere versie van de bibliotheek 150 geïnstalleerd worden op het computersysteem. Dit kan gebeuren door de geschikte bibliotheek op te halen van een ander computersysteem over een computernetwerk zoals een LAN of Local Area Network of een WAN of Wide Area Network. Bibliotheek 150 kan verder uitgevoerd zijn als een ‘dll’ of Dynamic Loadable Library indien het computersysteem Microsoft Windows als besturingssysteem heeft.[29] In step 305, a data file is then optionally loaded into the requested application by executing calls 123 to the file functions. To execute the calls 123, the interrogation application retrieves an implementation of the functions to be called from the library 150. This is analogous to the procedure for performing the state functions by means of library 130. Library 150 then contains the executable instructions for performing the file functions. Library 150 may differ depending on the operating system of the computer system on which the interrogation application is run, depending on the supplier of the requested application and the version of the requested application. The appropriate library 150 can be selected by checking all of these dependencies when installing the interrogation application on the computer system. Furthermore, these dependencies can be re-verified for retrieving the test in step 301. Optionally, a new or different version of the library 150 can be installed on the computer system. This can be done by retrieving the appropriate library from another computer system over a computer network such as a LAN or Local Area Network or a WAN or Wide Area Network. Library 150 can further be implemented as a "dll" or Dynamic Loadable Library if the computer system has Microsoft Windows as the operating system.

[30] Op dat moment is de bevraagde applicatie geïnitialiseerd en klaar voor het uitvoeren van de opdracht door de gebruiker. Figuur 2 illustreert een voorbeeld van een schermafdruk 202 van de bevraagde applicatie na initialisatie. De applicatie toont een bepaald onderdeel van het lint 203 met daarin elementen 204 waarmee de gebruiker acties kan uitvoeren binnen de applicatie. Door middel van de toestandsfuncties kan dan bepaald worden welk onderdeel van het lint 203 actief is en welke knoppen 204 getoond worden in het lint 203. In het voorbeeld van Figuur 2 is de bevraagde applicatie een rekenblad applicatie zoals bijvoorbeeld Microsoft Excel. Binnen de applicatie is er ook een formulebalk 206 die de celinhoud toont van de cellen van het rekenblad 205. Het rekenblad kan hierbij een nieuw leeg rekenblad zijn of een rekenblad met vooral ingevulde cellen. Welk rekenblad wordt ingeladen kan gespecifieerd worden met behulp van de bestandsfuncties.[30] At that time, the requested application is initialized and ready for the user to carry out the order. Figure 2 illustrates an example of a screenshot 202 of the requested application after initialization. The application displays a certain part of the ribbon 203 with elements 204 with which the user can perform actions within the application. By means of the state functions it is then possible to determine which part of the ribbon 203 is active and which buttons 204 are shown in the ribbon 203. In the example of Figure 2, the requested application is a spreadsheet application such as, for example, Microsoft Excel. Within the application there is also a formula bar 206 that shows the cell contents of the cells of the spreadsheet 205. The spreadsheet can be a new empty spreadsheet or a spreadsheet with mostly filled-in cells. Which spreadsheet is loaded can be specified using the file functions.

[31] In stap 306 wordt de opdracht 120 dan aan de gebruiker getoond, bijvoorbeeld door het afbeelden van de opdrachten op een beeldscherm. In Figuur 2 wordt dit geïllustreerd door de opdracht weer te geven in het venster 252 binnen het venster 250 van de ondervragingsapplicatie. Alternatief kan de opdracht bijvoorbeeld ook auditief aan de gebruiker worden gegeven via een luidsprekersysteem als onderdeel van het computersysteem. Daaropvolgend voert de gebruiker dan de desbetreffende opdracht uit binnen de bevraagde applicatie.[31] In step 306, the command 120 is then displayed to the user, for example, by displaying the commands on a screen. In Figure 2, this is illustrated by displaying the command in the window 252 within the window 250 of the interrogation application. Alternatively, for example, the assignment can also be given auditively to the user via a loudspeaker system as part of the computer system. Subsequently, the user then executes the relevant command within the requested application.

[32] Zo kan de opdracht omvatten dat bepaalde acties dienen uitgevoerd worden op het bestand dat ingeladen werd, bijvoorbeeld het aanpassen van de inhoud van bepaalde cellen binnen het rekenblad 205. Alternatief kan de opdracht ook omvatten dat bepaald acties dienen uitgevoerd te worden op de applicatie zelf, d.i., dat de werkomgeving van de bevraagde applicatie dient gewijzigd te worden. Zo kan bijvoorbeeld gevraagd worden om bepaalde knoppen 204 aan het lint 203 toe te voegen.[32] For example, the command may include that certain actions must be performed on the file that was loaded, for example, adjusting the contents of certain cells within the spreadsheet 205. Alternatively, the command may also include that certain actions must be performed on the file. application itself, that is, the working environment of the requested application must be changed. For example, you may be asked to add certain buttons 204 to the ribbon 203.

[33] Na het uitvoeren van de opdracht ontvangt de ondervragingsapplicatie een bericht dat de opdracht werd uitgevoerd door de gebruiker. Dit kan bijvoorbeeld gebeuren door middel van een bevestigingsknop 253 die weergegeven word in het venster 250 en waar de gebruiker op klikt na het uitvoeren van de opdracht. Alternatief of complementair kan dit ook automatisch gebeuren, bijvoorbeeld wanneer een bepaalde hoeveelheid tijd is verstreken die maximaal mag gebruikt worden om de opdracht uit te voeren.[33] After executing the command, the interrogation application receives a message that the command was executed by the user. This can be done, for example, by means of a confirmation button 253 which is displayed in the window 250 and which the user clicks on after executing the command. Alternatively or complementarily this can also happen automatically, for example when a certain amount of time has elapsed that can be used to the maximum for executing the assignment.

[34] Vervolgens in stap 308 verifieert de ondervragingsapplicatie de uitgevoerde opdracht door de aanroepen 122 naar de verificatiefuncties uit te voeren. Op deze manier verifieert de ondervragingsapplicatie of de toestand van de bevraagde applicatie overeenkomt met de gewenste toestand die overeenkomt met de toestand wanneer de opdracht op de correcte manier werd uitgevoerd. De verificatiefuncties kunnen hierbij de toestand van een geopend bestand in de bevraagde applicatie verifiëren. Zo kunnen bijvoorbeeld de inhoud van de velden in de rekentabel 205 worden geverifieerd. De verificatiefuncties kunnen hierbij ook de toestand van de bevraagde applicatie zelf verifiëren, d.i., of de gebruikersomgeving van de applicatie werd aangepast. Zo kan bijvoorbeeld geverifieerd worden of bepaald knoppen 204 volgens de opdracht aan het lint 203 werden toegevoegd.[34] Next, in step 308, the interrogation application verifies the command executed by executing calls 122 to the verification functions. In this way, the interrogation application verifies whether the state of the requested application corresponds to the desired state corresponding to the state when the command was executed correctly. The verification functions can hereby verify the state of an open file in the requested application. For example, the contents of the fields in the calculation table 205 can be verified. The verification functions can also verify the state of the requested application itself, i.e., whether the user environment of the application has been modified. For example, it can be verified whether specific buttons 204 were added to the ribbon 203 according to the instruction.

[35] Voor het uitvoeren van de aanroepen 122 naar de verificatiefuncties haalt de ondervragingsapplicatie een implementatie van de aan te roepen functies op uit de bibliotheek 140. Dit is analoog aan de procedure voor het uitvoeren van de toestandsfuncties door middel van bibliotheek 130. Bibliotheek 140 bevat dan de uitvoerbare instructies voor het uitvoeren van de bestandsfuncties. Bibliotheek 140 kan hierbij verschillen afhankelijk van het besturingssysteem van het computersysteem waarop de ondervragingsapplicatie wordt uitgevoerd, afhankelijk van de leverancier van de bevraagde applicatie en van de versie van de bevraagde applicatie. De geschikte bibliotheek 140 kan geselecteerd worden door al deze afhankelijkheden na te gaan bij het installeren van de ondervragingsapplicatie op het computersysteem. Verder kunnen deze afhankelijkheden nogmaals geverifieerd worden voor het ophalen van de test in stap 301. Eventueel kan dan een nieuwe of andere versie van de bibliotheek 140 geïnstalleerd worden op het computersysteem. Dit kan gebeuren door de geschikte bibliotheek op te halen van een ander computersysteem over een computernetwerk zoals een LAN of Local Area Network of een WAN of Wide Area Network. Bibliotheek 140 kan verder uitgevoerd zijn als een ‘dll’ of Dynamic Loadable Library indien het computersysteem Microsoft Windows als besturingssysteem heeft.[35] To execute calls 122 to the verification functions, the interrogation application retrieves an implementation of the functions to be called from the library 140. This is analogous to the procedure for performing the state functions by means of library 130. Library 140 then contains the executable instructions for performing the file functions. Library 140 may differ depending on the operating system of the computer system on which the interrogation application is run, depending on the supplier of the requested application and the version of the requested application. The appropriate library 140 can be selected by checking all of these dependencies when installing the interrogation application on the computer system. Furthermore, these dependencies can be re-verified for retrieving the test in step 301. Optionally, a new or different version of the library 140 can be installed on the computer system. This can be done by retrieving the appropriate library from another computer system over a computer network such as a LAN or Local Area Network or a WAN or Wide Area Network. Library 140 can further be designed as a "dll" or Dynamic Loadable Library if the computer system has Microsoft Windows as the operating system.

[36] Het resultaat van de verificatiefunctie(s) wordt dan in stap 309 opgeslagen door de ondervragingsapplicatie. Optioneel kan ook het geopende en gewijzigde bestand opgeslagen worden zodat later de uitgevoerde opdracht op het bestand kan nagegaan worden.[36] The result of the verification function (s) is then stored in step 309 by the interrogation application. Optionally, the opened and modified file can also be saved so that the executed command can be checked on the file later.

[37] Na deze stap 309 kan dan een nieuwe vraag opgehaald worden en de stappen 303 tot 309 opnieuw doorlopen worden. Na het doorlopen van alle vragen in de test, is de test ten einde en kan dan het totaalresultaat berekend worden.[37] After this step 309, a new question can then be retrieved and steps 303 to 309 can be repeated again. After completing all the questions in the test, the test is finished and the total result can then be calculated.

[38] De ondervragingsapplicatie kan verder ook voorzien in navigatie-elementen 251 om te navigeren doorheen de vragen. Indien een gebruiker navigeert naar een voorgaande vraag, kan dan het reeds opgeslagen bestand terug worden opgehaald en geopend. Op deze manier kan de gebruiker zien welke acties hij had uitgevoerd in antwoord op de opdracht. Verder kan ook voorzien worden in een verversingselement 254 dat toelaat een reeds uitgevoerde opdracht opnieuw uit te voeren. In dit geval worden stappen 304 tot 309 opnieuw doorlopen en het voorgaande resultaat overschreven.[38] The interrogation application can further also provide navigation elements 251 to navigate through the questions. If a user navigates to a previous question, the already saved file can then be retrieved and opened. In this way the user can see which actions he had performed in response to the assignment. Furthermore, it is also possible to provide a refresh element 254 which makes it possible to re-execute an already executed order. In this case, steps 304 to 309 are repeated and the previous result overwritten.

[39] Een test 101 en bijhorende vragen 110 kunnen verder opgesteld zijn in een XML of Extensible Markup Language formaat. Op deze manier kunnen testen en vragen makkelijk worden uitgewisseld tussen verschillende besturingssystemen en dus tussen verschillende versies van de ondervragingsapplicatie.[39] A test 101 and associated questions 110 may be further prepared in an XML or Extensible Markup Language format. In this way, tests and questions can easily be exchanged between different operating systems and therefore between different versions of the interrogation application.

[40] Verder kan ook voorzien worden in een applicatie voor het opstellen van testen, d.i., een applicatie die toelaat om testen aan te maken. Zo kan een opsteller van een test vertrekken van een bestaande test die dan aangepast wordt of vertrekken van een nieuwe lege test. Voor het invullen van de aanroepen 121, 122 en 123 heeft de opsteller dan een vooraf gedefinieerde lijst functieaanroepen ter beschikking die hij kan aanwenden.[40] Furthermore, it is also possible to provide an application for the preparation of tests, i.e., an application that allows to make tests. For example, a test author can start from an existing test that is then adjusted or start from a new empty test. For the completion of calls 121, 122 and 123, the originator then has a predefined list of function calls at his disposal that he can use.

Bestandsfuncties [41] Hieronder worden enkele bestandsfuncties opgelijst volgens een uitvoeringsvorm van de uitvinding.File functions [41] Below, some file functions are listed according to an embodiment of the invention.

[42] Functienaam: LoadWorkbook (path)[42] Function name: LoadWorkbook (path)

Omschrijving: Laadt een bestaand rekenbladbestand in in een rekenblad applicatie als de te ondervragen applicatie.Description: Loads an existing spreadsheet file into a spreadsheet application as the application to be queried.

Voorbeeld: LoadWorkbook (cd_collections.xlsx) [43] Functienaam: GenerateWorkbook ()Example: LoadWorkbook (cd_collections.xlsx) [43] Function name: GenerateWorkbook ()

Omschrijving: Genereert een nieuw en dus leeg rekenbladbestand in een rekenblad applicatie als de te ondervragen applicatie.Description: Generates a new and therefore empty spreadsheet file in a spreadsheet application as the application to be interrogated.

Voorbeeld: GenerateWorkbook () [44] Functienaam: DocumentLoad (path)Example: GenerateWorkbook () [44] Function name: DocumentLoad (path)

Omschrijving: Genereert een nieuw en dus leeg tekstverwerkingsbestand in een tekstverwerkingsapplicatie als de te ondervragen applicatie.Description: Generates a new and therefore empty word processing file in a word processing application as the application to be interrogated.

Voorbeeld: DocumentLoad (cd_collections.docx) [45] Functienaam: OpenNewEmail ()Example: DocumentLoad (cd_collections.docx) [45] Function name: OpenNewEmail ()

Omschrijving: Maakt een nieuwe email aan in een email applicatie als de te ondervragen applicatie.Description: Creates a new email in an email application as the application to be queried.

Voorbeeld: OpenNewEmail () [46] Functienaam: AddChart (slide_number, type)Example: OpenNewEmail () [46] Function name: AddChart (slide_number, type)

Omschrijving: Voegt een grafiek toe aan een presentatie in een presentatie applicatie als de te ondervragen applicatie. Het type grafiek kan dan bijvoorbeeld één van volgende zijn: xlColumnClustered, xlColumnStacked, xlBarClustered, xlBarStacked.Description: Adds a graph to a presentation in a presentation application as the application to be queried. The type of chart can then be, for example, one of the following: xlColumnClustered, xlColumnStacked, xlBarClustered, xlBarStacked.

Voorbeeld: AddChart (2, xlColumnClustered)Example: AddChart (2, xlColumnClustered)

Toestandsfuncties [47] Hieronder worden enkele toestandsfuncties opgelijst volgens een uitvoeringsvorm van de uitvinding.State functions [47] Below, some state functions are listed according to an embodiment of the invention.

[48] Functienaam: PinUnPinFile (FileName, Value)[48] Function name: PinUnPinFile (FileName, Value)

Omschrijving: Maak een bestand zichtbaar of onzichtbaar in de lijst met recente bestanden die in de te ondervragen applicatie wordt getoond. De value ‘0’ staat dan bijvoorbeeld voor onzichtbaar en de waarde ‘1’ voor zichtbaar.Description: Make a file visible or invisible in the list of recent files that is displayed in the application to be interrogated. For example, the value "0" stands for invisible and the value "1" for visible.

Voorbeeld: PinUnPinFile (cd_collections.xlsx, 0) [49] Functienaam: InitializeRibbons ()Example: PinUnPinFile (cd_collections.xlsx, 0) [49] Function name: InitializeRibbons ()

Omschrijving: Initialeer het lint in een vooraf gedefinieerde toestand.Description: Initialize the ribbon in a predefined state.

Voorbeeld: InitializeRibbonsQExample: InitializeRibbonsQ

[50] Functienaam: RibbonMinimize ()[50] Function name: RibbonMinimize ()

Omschrijving: Minimaliseer het lint.Description: Minimize the ribbon.

Voorbeeld: RibbonMinimize () [51] Functienaam: ApplyFilter (Filter)Example: RibbonMinimize () [51] Function name: ApplyFilter (Filter)

Omschrijving: Pas een filter toe op de emailweergaves in een email applicatie als de te ondervragen applicatie.Description: Apply a filter to the email views in an email application as the application to be queried.

Voorbeeld: ApplyFilter (Filter tekst) [52] Verder kunnen toestandsfuncties gecombineerd worden om zo een meer complexe toestand van de te bevragen applicatie te kunnen bereiken. Dit kan bijvoorbeeld gedaan worden door verschillende aanroepen 121 naar toestandsfuncties in de vraag 110 op te lijsten.Example: ApplyFilter (Filter text) [52] Furthermore, state functions can be combined to achieve a more complex state of the application to be queried. This can be done, for example, by listing different calls 121 for state functions in the query 110.

Verificatiefuncties [53] Hieronder worden enkele verificatiefuncties opgelijst voor een rekenblad applicatie als de te ondervragen applicatie volgens een uitvoeringsvorm van de uitvinding.Verification functions [53] Below are listed some verification functions for a spreadsheet application as the application to be queried according to an embodiment of the invention.

[54] Functienaam: CellHasRelativeAndAbsoluteFormula(range, userFormulaAddress, formula)[54] Function name: CellHasRelativeAndAbsoluteFormula (range, userFormulaAddress, formula)

Omschrijving: Deze functie geeft een booleaanse ‘True’ waarde terug als de cel de correcte absolute en relatieve cel adressen heeft in de formule.Description: This function returns a boolean "True" value if the cell has the correct absolute and relative cell addresses in the formula.

Voorbeeld: CellHasRelativeAndAbsoluteFormula(e3:f3, d3:d3, =B3+(B3*C$3)) [55] Functienaam: ChartElementAndPlotSeries (element, plotSeries) Omschrijving: Checkt de as waarop een bepaald grafiekonderdeel staat geplot. Voorbeeld: ChartElementAndPlotSeries (Econ. groei, Secondary) [56] Functienaam: ChartElementType (chartType, chartElementType) Omschrijving: Checkt de grafiekstijl en type van een grafiek.Example: CellHasRelativeAndAbsoluteFormula (e3: f3, d3: d3, = B3 + (B3 * C $ 3)) [55] Function name: ChartElementAndPlotSeries (element, plotSeries) Description: Checks the axis on which a particular graph component is plotted. Example: ChartElementAndPlotSeries (Economy, Secondary) [56] Function name: ChartElementType (chartType, chartElementType) Description: Checks the chart style and type of a chart.

Voorbeeld: ChartElementType (42, line) [57] Hieronder worden enkele verificatiefuncties opgelijst voor een tekstverwerker applicatie als de te ondervragen applicatie volgens een uitvoeringsvorm van de uitvinding.Example: ChartElementType (42, line) [57] Below are listed some verification functions for a word processing application as the application to be queried according to an embodiment of the invention.

[58] Functienaam: RibbonItemExists (tab, group, items)[58] Job title: RibbonItemExists (tab, group, items)

Omschrijving: Checkt of het item bestaat in de specifieke tab/groep op het lint Voorbeeld: RibbonItemExists (Personal, Favourites,Description: Checks whether the item exists in the specific tab / group on the ribbon Example: RibbonItemExists (Personal, Favorites,

mso:ChartTypeAllInsertDialog;mso:MacroPlay;mso:ZoomClassic;mso:WindowS witchWindows) [59] Functienaam: HeaderPageNumberDateAlignment (type, alignment) Omschrijving: Checkt of de specifieke header met de specifieke uitlijning bestaat. De uitlijning of alignment kan dan bijvoorbeeld één van volgende zijn: Center,mso: ChartTypeAllInsertDialog; mso: MacroPlay; mso: ZoomClassic; mso: WindowS witchWindows) [59] Function name: HeaderPageNumberDateAlignment (type, alignment) Description: Checks whether the specific header with the specific alignment exists. The alignment or alignment can then for example be one of the following: Center,

Left, Right.Left, Right.

Voorbeeld: HeaderPageNumberDateAlignment (Page, Center) [60] Functienaam: ParagraphHasHorizontalLine (paragraphPos)Example: HeaderPageNumberDateAlignment (Page, Center) [60] Function Name: ParagraphHasHorizontalLine (paragraphPos)

Omschrijving: Checkt of de specifieke paragraaf een horizontale lijn heeft. Voorbeeld: ParagraphHasHorizontalLine (12) [61] Hieronder worden enkele verificatiefuncties opgelijst voor een email applicatie zoals bijvoorbeeld Microsoft Outlook als de te ondervragen applicatie volgens een uitvoeringsvorm van de uitvinding.Description: Checks whether the specific paragraph has a horizontal line. Example: ParagraphHasHorizontalLine (12) [61] Below are listed some verification functions for an email application such as, for example, Microsoft Outlook as the application to be queried according to an embodiment of the invention.

[62] Functienaam: SetHighPriority (param)[62] Function name: SetHighPriority (param)

Omschrijving: Checkt of de prioriteit op hoog staat.Description: Checks whether the priority is set to high.

Voorbeeld: SetHighPriority (olimportancehigh) [63] Functienaam: ReplyEmailNL (subj, bodyTxt, email)Example: SetHighPriority (olimportancehigh) [63] Function name: ReplyEmailNL (subj, bodyTxt, email)

Omschrijving: Checkt of de specifieke email beantwoord werd.Description: Checks whether the specific email has been answered.

Voorbeeld: SetHighPriority (re: login probleem, het probleem is opgelost, mail@adres.be) [64] Functienaam: isAppointmentOpenNL (folder, subject, date)Example: SetHighPriority (re: login problem, the problem has been solved, mail@adres.be) [64] Function name: isAppointmentOpenNL (folder, subject, date)

Omschrijving: Checkt of de specifieke afspraak geopend is.Description: Checks whether the specific appointment is open.

Voorbeeld: isAppointmentOpenNL (Calendar, dentist visit, October 24) [65] Hieronder worden enkele verificatiefuncties opgelijst voor een presentatie applicatie zoals bijvoorbeeld Microsoft Powerpoint als de te ondervragen applicatie volgens een uitvoeringsvorm van de uitvinding.Example: isAppointmentOpenNL (Calendar, dentist visit, October 24) [65] Below are listed some verification functions for a presentation application such as, for example, Microsoft Powerpoint as the application to be interrogated according to an embodiment of the invention.

[66] Functienaam: SlideHasTable (slideNo, count)[66] Function name: SlideHasTable (slideNo, count)

Omschrijving: Checkt of de slide een tabel heeft.Description: Checks whether the slide has a table.

Voorbeeld: SlideHasTable (2, 1) [67] Functienaam: IsActionButtonAction (slide_number, action)Example: SlideHasTable (2, 1) [67] Function name: IsActionButtonAction (slide_number, action)

Omschrijving: Checkt de actieknop en de actie.Description: Checks the action button and the action.

Voorbeeld: IsActionButtonAction (1, ppActionLastSlide)Example: IsActionButtonAction (1, ppActionLastSlide)

Verder kunnen verificatiefuncties gecombineerd worden om zo een meer complexe toestand te verifiëren. Hiervoor kan bijvoorbeeld gebruik gemaakt worden van logische operatoren die de resultaten van verschillende verificatiefuncties combineert tot één enkel eindresultaat van de vraag 110.Furthermore, verification functions can be combined to verify a more complex state. For this purpose, use can be made, for example, of logical operators that combine the results of different verification functions into a single end result of the question 110.

[68] Zoals reeds uiteengezet hierboven wordt de implementatie van de functieaanroepen opgeslagen in software bibliotheken 130, 140 en 150. In de implementatie van de functieaanroepen worden dan interfacefuncties van de specifieke bevraagde applicatie aangeroepen en dus ook uitgevoerd bij het uitvoeren van de desbetreffende functieaanroepen 121, 122 of 123.[68] As already explained above, the implementation of the function calls is stored in software libraries 130, 140 and 150. In the implementation of the function calls, interface functions of the specific requested application are then invoked and thus also performed when executing the relevant function calls 121 , 122 or 123.

Interfacefuncties om acties uit te voeren vanuit een eerste applicatie binnen een tweede applicatie worden ook wel Application Programming Interface of API functies genoemd. Zo zal de software bibliotheek 140 dus aanroepen omvatten van Application Programming Interface of API functies die bij het verifiëren 308 worden aangeroepen door de ondervragingsapplicatie om zo te verifiëren of de toestand van de bevraagde computerapplicatie overeenkomt met de gewenste toestand na het uitvoeren van de opdracht 120.Interface functions to perform actions from a first application within a second application are also called Application Programming Interface or API functions. Thus, the software library 140 will include invocation of Application Programming Interface or API functions invoked by the interrogation application during verification 308 to verify whether the state of the requested computer application corresponds to the desired state after executing command 120.

[69] Volgens uitvoeringsvormen van de uitvinding is het computersysteem uitgerust met een processor die verder is geconfigureerd voor het verwerken van instructies om zo de ondervragingsapplicatie en de bevraagde applicatie uit te voeren. Het computersysteem kan verder een scherm omvatten om de grafische omgeving van de bevraagde applicatie weer te geven. Verder kan ook een grafische omgeving van de ondervragingsapplicatie op zo’n scherm weergegeven worden. Zo kan het computersysteem bijvoorbeeld uitgevoerd zijn als een desktop computer, draagbare computer, een tablet of smartphone.[69] According to embodiments of the invention, the computer system is equipped with a processor that is further configured to process instructions so as to execute the interrogation application and the requested application. The computer system may further comprise a screen to display the graphical environment of the requested application. Furthermore, a graphical environment of the interrogation application can also be displayed on such a screen. For example, the computer system can be designed as a desktop computer, portable computer, a tablet or smartphone.

Claims (9)

CONCLUSIESCONCLUSIONS 1. Computer geïmplementeerde werkwijze voor het testen van kennis van een computergebruiker over een eerste computerapplicatie (202) omvattende de volgende stappen uitgevoerd door een tweede computerapplicatie (250): - het ophalen (303) van een vraag (110) uit een vragendatabank (102) omvattende: a) een opdracht (120) uit te voeren door de computergebruiker in de eerste computerapplicatie; b) één of meerdere oproepen (122) naar respectievelijk één of meerdere verificatiefuncties; - na het uitvoeren van de opdracht (120) door de gebruiker, het verifiëren van de opdracht door het uitvoeren (308) van de één of meerdere verificatiefuncties; waarbij het uitvoeren van een verificatiefunctie verder omvat: - het verder aanroepen van Application Programming Interface of API functies in de eerste computerapplicatie om te verifiëren of de toestand van de eerste computerapplicatie overeenkomt met een gewenste toestand na het uitvoeren van de opdracht.A computer-implemented method for testing knowledge of a computer user about a first computer application (202) comprising the following steps performed by a second computer application (250): - retrieving (303) a question (110) from a query database (102) comprising: a) a command (120) to be executed by the computer user in the first computer application; b) one or more calls (122) to one or more verification functions respectively; - after executing the command (120) by the user, verifying the command by executing (308) the one or more verification functions; wherein performing a verification function further comprises: - further invoking Application Programming Interface or API functions in the first computer application to verify whether the state of the first computer application corresponds to a desired state after executing the command. 2. Werkwijze volgens conclusie 1 waarbij de eerste computerapplicatie een applicatie is uit de groep van een rekenblad applicatie (202), een applicatie voor tekstverwerking, een email applicatie, een database applicatie en een presentatieapplicatie.The method of claim 1 wherein the first computer application is an application from the group of a spreadsheet application (202), an application for word processing, an email application, a database application, and a presentation application. 3. Werkwijze volgens één van voorgaande conclusies waarbij het verder aanroepen van API functies verder omvat: - het meegeven van de gewenste toestand als argument met de verificatiefuncties.Method according to one of the preceding claims, wherein further calling of API functions further comprises: - giving the desired state as an argument with the verification functions. 4. Werkwijze volgens één van voorgaande conclusies waarbij de werkwijze verder omvat: - het inladen (305) van een eerste databestand in de eerste applicatie; en waarbij de opdracht acties oplijst die moeten uitgevoerd worden op de gegevens van het eerste databestand door middel van de eerste applicatie; en waarbij het verder aanroepen van API functies verder omvat: - het verifiëren of de gegevens werden aangepast via de eerste applicatie.The method of any one of the preceding claims, wherein the method further comprises: - loading (305) a first data file into the first application; and wherein the command lists actions to be performed on the data of the first data file through the first application; and wherein further invoking API functions further comprises: - verifying whether the data was modified via the first application. 5. Werkwijze volgens één van voorgaande conclusies waarbij de vraag verder omvat: c) één of meerdere oproepen naar respectievelijk één of meerdere toestandsfuncties (121) om de eerste applicatie op voorhand in een vooraf gedefinieerde toestand te brengen; en waarbij de werkwijze verder het uitvoeren (304) van de één of meerdere toestandsfuncties omvat; en waarbij het uitvoeren van de één of meerdere toestandsfuncties omvat: - het verder aanroepen van Application Programming Interface of API functies in de eerste computerapplicatie om de eerste applicatie in de vooraf gedefinieerde toestand te brengen.The method of any one of the preceding claims wherein the query further comprises: c) one or more calls to one or more state functions (121), respectively, to bring the first application to a predefined state in advance; and wherein the method further comprises performing (304) the one or more state functions; and wherein performing the one or more state functions comprises: - further invoking Application Programming Interface or API functions in the first computer application to bring the first application into the predefined state. 6. Werkwijze volgens conclusie 5 waarbij de opdracht acties oplijst die moeten uitgevoerd worden om een gebruikersomgeving van de eerste applicatie van een eerste naar een tweede toestand te brengen; en waarbij de vooraf gedefinieerde toestand overeenkomt met de eerste toestand; en waarbij het uitvoeren van een verificatiefunctie verder omvat: - het verder aanroepen van API functies in de eerste computerapplicatie om te verifiëren of de gebruikersomgeving in de tweede toestand is gebracht.The method of claim 5 wherein the command lists actions to be performed to bring a user environment of the first application from a first to a second state; and wherein the predefined state corresponds to the first state; and wherein performing a verification function further comprises: - further calling API functions in the first computer application to verify whether the user environment is in the second state. 7. Computerprogrammaproduct omvattende op een computer uitvoerbare instructies voor het uitvoeren van de werkwijze volgens één van de conclusies 1 tot 6, wanneer het programma op een computer werkt.A computer program product comprising computer-executable instructions for performing the method of any one of claims 1 to 6 when the program is running on a computer. 8. Computer-leesbaar opslagmedium dat het computerprogrammaproduct volgens conclusie 7 omvat.A computer-readable storage medium comprising the computer program product of claim 7. 9. Gegevensverwerkingssysteem dat is geprogrammeerd voor het uitvoeren van de werkwijze volgens één van de conclusies 1 tot en met 6.A data processing system programmed to perform the method according to any of claims 1 to 6.
BE2015/5463A 2015-07-17 2015-07-17 EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE BE1023170B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
BE2015/5463A BE1023170B1 (en) 2015-07-17 2015-07-17 EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BE2015/5463A BE1023170B1 (en) 2015-07-17 2015-07-17 EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE

Publications (1)

Publication Number Publication Date
BE1023170B1 true BE1023170B1 (en) 2016-12-09

Family

ID=54256444

Family Applications (1)

Application Number Title Priority Date Filing Date
BE2015/5463A BE1023170B1 (en) 2015-07-17 2015-07-17 EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE

Country Status (1)

Country Link
BE (1) BE1023170B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100047760A1 (en) * 2008-08-20 2010-02-25 Mike Best Method and system for delivering performance based emulation testing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100047760A1 (en) * 2008-08-20 2010-02-25 Mike Best Method and system for delivering performance based emulation testing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BERDAJS J ET AL: "Extending applications using an advanced approach to DLL injection and API hooking", SOFTWARE PRACTICE & EXPERIENCE, WILEY & SONS, BOGNOR REGIS, GB, vol. 40, no. 7, 1 June 2010 (2010-06-01), pages 567 - 584, XP007917822, ISSN: 0038-0644, [retrieved on 20100420], DOI: 10.1002/SPE.973 *

Similar Documents

Publication Publication Date Title
US9396098B2 (en) Apparatuses, methods, and computer program products for conducting automated tests
US20110145789A1 (en) Application configuration deployment monitor
US8250520B2 (en) Implementing custom activities in a workflow
AU2018241159A1 (en) Contextual solicitation in a starter application
US7720209B2 (en) Developing application objects that interoperate with external objects
US20240020350A1 (en) Method and system for navigation control
US20090049378A1 (en) Method and computer program for associating element diagrams with applications
BE1023170B1 (en) EXAMINATION APPLICATION FOR TESTING COMPUTER KNOWLEDGE
US20070260995A1 (en) Systems and methods for relating data to a task
US8510343B2 (en) Cogeneration of database applications and their databases
Hunt PyTest Testing Framework
Bordis et al. VarCorC: Developing Object-Oriented Software Product Lines Using Correctness-by-Construction
Davis et al. Application Architecture
Horalek et al. Automated Tests Using Selenium Framework
Cosmina et al. Spring Testing
Beasley et al. JavaScript Programming
Doglio et al. Testing Your Application
Acharya Mockito for Spring
Mishra et al. Introduction to Test-Driven Development
Schaefer et al. Spring Testing
Slender Developing with ext GWT: Enterprise RIA development
Prakash Pradhan Working with Power Apps Customizations
Lawrence Testing
Mabbutt et al. Lifecycles and Context
Dixit Android Input Framework