CN102193862B - User interface is tested in multiple execution environment - Google Patents
User interface is tested in multiple execution environment Download PDFInfo
- Publication number
- CN102193862B CN102193862B CN201110065878.XA CN201110065878A CN102193862B CN 102193862 B CN102193862 B CN 102193862B CN 201110065878 A CN201110065878 A CN 201110065878A CN 102193862 B CN102193862 B CN 102193862B
- Authority
- CN
- China
- Prior art keywords
- environment
- execution environment
- action
- state
- driver
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 230000000875 corresponding Effects 0.000 claims abstract description 5
- 238000004891 communication Methods 0.000 claims description 37
- 230000000007 visual effect Effects 0.000 claims description 10
- 241001269238 Data Species 0.000 claims 1
- 230000001808 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 239000010410 layer Substances 0.000 description 19
- 230000015654 memory Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- XXUZFRDUEGQHOV-UHFFFAOYSA-J Strontium ranelate Chemical compound [Sr+2].[Sr+2].[O-]C(=O)CN(CC([O-])=O)C=1SC(C([O-])=O)=C(CC([O-])=O)C=1C#N XXUZFRDUEGQHOV-UHFFFAOYSA-J 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 206010010050 Colour blindness Diseases 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 201000000761 achromatopsia Diseases 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 235000005035 ginseng Nutrition 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 239000002365 multiple layer Substances 0.000 description 1
- 230000003287 optical Effects 0.000 description 1
- 230000000576 supplementary Effects 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Abstract
Disclose the method testing user interface in multiple execution environment, system and computer-readable medium.A kind of concrete grammar includes: selects one or more UI test and wherein to run one or more execution environment of this UI test.Each performed in environment is designated as driver execution environment.Show the driver UI corresponding with this driver execution environment.When receiving U/I action at driver UI, the data of this U/I action are represented, and slave driver performs environment and is sent to each other execution environment.At each, other substantially simultaneously repeat in performing environment this U/I action.
Description
Technical field
The present invention relates to the test of application program, particularly relate to the Application testing in multiple execution environment.
Background technology
Software vendor often issues software application on multiple calculating platforms.Before issuing, often exist
This software application is tested on each calculating platform.Software test the most repeatedly is time-consuming
's.Such as, the test of particular platform is repeated owing to repeatedly reconfiguring application for test every time repeats every time
Program, may cause the expense in time and resource.
Summary of the invention
Disclose a kind of method testing user interface (UI) in multiple execution environment.Environment is performed at one
The U/I action carried out in (such as, " driver " performs environment) performs in environment at one or more other
Automatically and substantially simultaneously repeat.Can provide to user (such as, UI tester) and look squarely display picture (HUD),
This HUD include the UI generated by each execution environment and identify these perform the state between environment or
Apparent difference.
There is provided this general introduction in order to introduce in simplified form will be described in detail below in further describe
Some concepts.This general introduction is not intended as identifying key feature or the essential feature of theme required for protection,
It is intended to be used to limit the scope of theme required for protection.
Accompanying drawing explanation
Fig. 1 is the diagram of the specific embodiment being shown in the system testing user interface in multiple execution environment.
Fig. 2 is another specific embodiment being shown in the system testing user interface in multiple execution environment
Diagram.
Fig. 3 is the data flow diagram of the specific embodiment of the data stream in the system of system or the Fig. 2 illustrating Fig. 1.
Fig. 4 is the flow process of the specific embodiment being shown in the method testing user interface in multiple execution environment
Figure.
Fig. 5 is to illustrate that display driving software performs environment and other perform looking squarely of environment and show picture (HUD)
The screenshot capture of specific embodiment.
Fig. 6 is the block diagram of a computing environment, and this computing environment includes can be used for supporting as Figure 1-5
The calculating equipment of each embodiment of computer implemented method, computer program and system component.
Detailed description of the invention
In one embodiment, a kind of computer implemented method includes: select and based on user interface (UI)
One or more tests of being associated of application program, and select multiple execution environment.Multiple execution environment
In one be designated as driver execution environment.The method also includes: display performs ring with driver
The driver UI that border is corresponding.The method farther includes: at driver UI receive with one or
The U/I action that multiple tests are associated.The method includes: the expression slave driver of U/I action is performed ring
Border is sent to each, and other perform environment.This U/I action is substantially same in other execution environment at each
Shi Chongfu.In an alternative embodiment, can carry out in driver execution environment random (ad hoc)
Test, and this random test can duplication in other perform environment.
In another specific embodiment, a kind of computer system includes memorizer and is coupled to this memorizer
Processor.This processor is configured to perform instruction, and this instruction causes user interface (UI) to test application program,
This ui testing application program includes looking squarely display picture (HUD) and communication bus.This HUD is joined
It is set to show that each in multiple execution environment, in plurality of execution environment are designated as driving
Program execution enviroment.This HUD is configured at driver execution environment receive to test with UI be associated
U/I action.This HUD is configured to that the expression slave driver of U/I action is performed environment and sends out
Other perform environment to deliver to each.At each, other substantially simultaneously weigh in performing environment this U/I action
Multiple.Communication bus is coupled to each in multiple execution environment, and is configured to slave driver execution ring
To each, other perform environment broadcast data in border.
In another specific embodiment, a kind of computer-readable medium includes instruction, and this instruction is when being calculated
It is one or more with what application program based on user interface (UI) was associated that machine makes computer select when performing
Test, and select multiple execution environment.In multiple execution environment one is designated as driver and performs ring
Border.This instruction also makes the communication agent at each in multiple execution environment of computer initialization, and
Show the driver UI corresponding with driver execution environment.This instruction is further such that computer exists
The U/I action being associated with one or more tests is received at driver UI.This instruction makes computer incite somebody to action
The communication agent that the expression slave driver of U/I action performs at environment is sent to each by communication bus
Other perform the communication agent at environment.At each, other perform in environment substantially simultaneously this U/I action
Repeat.
Fig. 1 shows the specific embodiment of the system 100 testing user interface (UI) in multiple execution environment.
System 100 includes looking squarely display picture (HUD) 110 and communication bus 150.This system also includes multiple holding
Row environment (such as, illustrative execution environment 120,130 and 140).A quilt in multiple execution environment
It is appointed as driver execution environment.Such as, in the specific embodiment shown in Fig. 1, " perform environment
A " it is designated as driver execution environment 120.In one embodiment, system 100 is set by calculating
For realizing.It is said that in general, the system 100 of Fig. 1 is operable as performing environment 120,130 and 140
Each at substantially simultaneously test UI.Such as, UI test can be random test or can be based on predetermined
Test case and scene.
Driver execution environment 120 can be configured to UI while performing environment 120,130 and 140
U/I action 104 is received from user 102 during test.Driver execution environment 120 (or driver holds
The test application program performed at row environment 120) U/I action 104 can be converted into U/I action and represent 124.
Such as, U/I action represent 124 can include one group of input device controls (such as, keyboard key in, mouse move,
And click, stylus control, touch screen control, multiple point touching control or any other input equipment
Control).Input device controls may also comprise timing parameters (such as, waiting time).U/I action represents 124
May also include the software code automatically generated, this software code may perform to repeat U/I action 104.Drive
U/I action can be represented that 124 (such as, with serialized form) are sent to often by program execution enviroment 120
One other execution environment 130,140.In one embodiment, U/I action represents 124 by driving journey
Sequence perform the communication agent 122 of environment 120 by communication bus 150 be broadcast to other perform environment 130,
The communication agent 132,142 of 140.
Each other execution environment 130 and 140 can receive U/I action and represent 134,144, and based on UI
Action represents that 134,144 substantially simultaneously repeat U/I action 104.Therefore, U/I action 104 (such as, with
UI tests the U/I action being associated) can perform to perform at environment at one, and ring can be performed at multiple other
Border is substantially simultaneously repeated.It should be noted that U/I action represents that 124,134 and 144 can be identical,
And U/I action represent 124,134 and 144 can be machine and computing environment unrelated.Therefore, UI
Action represents can be sent to multiple execution environment, and do not perform respective format that U/I action represents or
Configuration.
HUD 110 can show that each performs environment 120,130 and 140.Such as, HUD 110 can lead to
Cross display device and perform environment 120,130 and 140 to user 102 display.In one embodiment,
HUD 110 can show one or more execution environment by RDP (RDP) session.Such as,
HUD 110 can by respectively with the RDP session 111 and 112 of non-driven program execution enviroment 130 and 140
Show non-driven program execution enviroment 130 and 140.In one embodiment, HUD also can pass through
RDP session carrys out display driving software and performs environment 120.
In one embodiment, HUD 110 is additionally configured to receive new driver from user 102
Perform the appointment of environment.HUD 110 may be alternatively configured as providing the vision of UI test result to user 102
Designator (such as, illustrative visual indicator 106).Such as, visual indicator 106 may indicate that each
After having been carried out U/I action 104 at individual execution environment 120,130 and 140, first performs environment tool
There is the state being different from the second execution environment.This state can include UI screenshot capture, navigational state, model
State, automatization's state, parameter state and performance metric are (such as, in the term of execution consumption of U/I action
The memorizer taken and processor time quantum) in one or more.The state that two perform between environment is entered
Row compare can include image successive appraximation, with projection resolution differences image comparison, for it
His Accessibility choice require (such as, achromatopsia, etc.) to the regulation of image, the string of different language comparison (such as,
When main test operator (such as user 102 (when only saying English, this compares can include that translation is so that this is said
English-speaking can be effectively tested other language), (such as, desk-top size is right in the comparison of different display medium
Than mobile device size) (including the compensation to screen resolution difference), and other compare.
HUD 110 may compare and detect the mismatch in the state of various execution environment 120,130 and 140.
HUD describes with further reference to Fig. 5 and illustrates.User 102 can take by view-based access control model designator 106
Action (such as, report bug).Such as, in order to make (such as, mismatch) the execution environment of deviation and other
Performing environment and keep consistent, user 102 may specify new driver execution environment, at disabling system 100
U/I action replicate, and deviation execution environment at optionally make U/I action.
In one embodiment, when system includes multiple execution environment, these perform in environment
Or multiple can be realized by virtual machine.Such as, driver execution environment 120 can be the basis of system 100
Machine (such as, " main frame ") performs environment, and other execution environment 130,140 can be by void at system 100
Plan machine performs (such as, as " objective " environment).
In operation, optional one or more tests for application program based on UI are so that multiple
Perform at each in selected execution environment (such as, performing environment 120,130 and 140).Perform
Environment 120,130 and 140 can display resolution, text language (such as, English contrast Spanish),
Software application (such as, different web browsers or the different editions of same web browser), behaviour
Make system, hardware structure (such as, 32 contrast 64), machine condition (such as, " brand-new " machine
Device contrasts with " Evolving State " machine), in terms of other characteristics or in each combination side above
Face can be mutually different.It should be noted that these differences are merely illustrative, and can not be considered as to limit.
HUD 110 can perform environment 120, and driver execution environment 120 to user 102 display driving software
U/I action 104 can be received from user.Such as, U/I action 104 can be clear at web via click
The button at device of looking at is pressed.Driver execution environment 120 can generate U/I action based on U/I action 104
Represent 124, and U/I action is represented, and 124 are sent to other execution environment 130 and 140.
Other perform environment 130 and 140 can substantially simultaneously repeat U/I action 104.Such as, other are held
Row environment 130 and 140 can substantially simultaneously perform web browser button and press.HUD 110 can show
Various execution environment 120,130,140.HUD 110 also can detect execution environment 120,130,140
In two between state mismatch time show a visual indicator 106.Such as, visual indicator 106 can
Instruction after web browser button is pressed, the 3rd perform environment 140 have be different from driver perform
Environment 120 and the UI state of the second execution environment 130, thereby indicated that at the 3rd execution environment 140
The possible bug of web browser.
Each U/I action 104 received at system 100 can be repeated by this test process.Such as,
The second U/I action, and the expression of this second U/I action can be received at driver execution environment 120
Each other execution environment 130 and 140 can be sent to by slave driver execution environment.
It is appreciated that the UI that the system 100 of Fig. 1 may be implemented in multiple execution environment substantially simultaneously surveys
Examination, and do not produce the expense owing to reconfiguring or task switching causes.It will therefore be appreciated that Fig. 1's is
System 100 can reduce the integrated testability time of the application program of based on UI compatible with multiple execution environment.
Fig. 2 shows that another of system 200 testing user interface in multiple execution environment is embodied as
Example.System 200 includes multiple calculating equipment (such as, illustrative calculating equipment 210,220 and 230).Often
Individual calculating equipment can include one or more execution environment.Such as, the first calculating equipment 210 can include first
Performing environment 212, the second calculating equipment 220 can include the second execution environment 222, and the 3rd calculates equipment 230
The 3rd execution environment 232 can be included.These performed in environment are designated as driver execution environment.
Such as, in the specific embodiment shown in Fig. 2, " performing environment A " is designated as driver and performs ring
Border.
Driver execution environment 212 can be configured to performing the UI test of environment 212,222 and 232
Period receives U/I action 204 from user 202.Driver execution environment 212 can be by U/I action 214 turns
Change U/I action into and represent 214, and U/I action is represented 214 be sent to each other perform environment 222,
232.In one embodiment, U/I action represents 214 by the communication generation of driver execution environment 212
Reason 213 is broadcast to other communication agents 223,233 performing environment 222,232 by communication bus 240.
Such as, communication bus can use the communication based on socket between calculating equipment 210,220 and 230
Realize.Or, communication bus 240 other calculating communication between devices agreements can be realized by some.
Each other perform environment 222 and 232 and can receive U/I action and represent 224 and 234, and based on
U/I action represents that 224 and 234 substantially simultaneously repeat U/I action 204.
HUD 211 can show that each performs environment 212,222 and 232.Such as, HUD 211 can lead to
Cross display device and perform environment 212,222 and 232 to user 202 display.In one embodiment,
HUD 211 shows one or more execution environment by RDP (RDP) session.Such as,
HUD 211 can by respectively with the RDP session 218 and 219 of non-driven program execution enviroment 222 and 232
Show non-driven program execution enviroment 222 and 232.
HUD 211 also can receive UI state from performing environment.Such as, drive non-when U/I action 204
After dynamic program performs to repeat at environment 222 and 232, HUD 211 can be from non-driven program execution enviroment
222 and 232 receive UI state 251 and 252 respectively.UI state 251,252 each can include UI
In screenshot capture, navigational state, model state, automatization's state, parameter state and performance metric
One or more.HUD describes with further reference to Fig. 5 and illustrates.
In one embodiment, the first calculating equipment 210 includes status comparator 215, status comparator
215 are configured to comparison each UI state.Such as, status comparator 215 can be by UI state 251 and 252
Compare with the UI state of driver execution environment 212.Status comparator 215 may be alternatively configured as
Determine between UI state when existence mismatch.In one embodiment, when existence mismatch,
Can be by this unmatched record in journal file 216.For example, it is possible to create one in journal file 216
Entry, journal file 216 is a part for UI bug reporting application.HUD 211 also can be to user
202 visual indicator 206 that state mismatch is provided.
In one embodiment, the first calculating equipment 210 also includes testing recorder and player 217.
Test recorder and the recordable multiple U/I action of player 217, and store multiple U/I action and represent, including
The timing information (such as, waiting time) being associated with multiple U/I action.The expression stored can be by communication
Bus 240 is sent to perform environment.Test recorder and player 217 may be alternatively configured as based on being deposited
The expression of the U/I action of storage reappears U/I action.Therefore, when each calculating equipment 210,220 and 230
All including testing recorder and during player, U/I action can be by batch mode rather than next a side
Formula sends and repeats.For example, it is possible to perform environment records a UI protos test suite PROTOS at one, and many
Individual execution environment substantially simultaneously reappears this UI protos test suite PROTOS.
In operation, U/I action 204 (such as, testing, with UI, the U/I action being associated) can be at driver
Perform to receive at environment 212, and can perform substantially simultaneously to repeat at environment 222,232 at other.
HUD 211 can show execution environment 212,222,232, and status comparator 215 can determine that UI moves
Make whether 204 cause performing the state mismatch between environment 212,222,232.When state mismatch being detected
Time, HUD 211 can provide visual indicator 206 to user 202.
It is appreciated that the system 200 of Fig. 2 may be implemented at multiple calculating equipment (such as, at distributed meter
At calculation system) UI substantially simultaneously test.
Fig. 3 shows data flow diagram 300, it illustrates at the system 200 of system 100 or Fig. 2 of Fig. 1
The specific embodiment of data stream.
Data stream at UI test system can be divided into multiple layer.Such as, user/HUD monitor layer 310 with
And bus/controller layer 320 can be associated with driver execution environment.Additionally, one or more environment layers
330 can be associated with one or more non-driven program execution enviroment.In an illustrative embodiment, user
/ HUD monitors that layer 310 and bus/controller layer 320 can be relevant to the driver execution environment 120 of Fig. 1
Connection, and environment layer 330 can be associated with each in non-driven program execution enviroment 130 and 140.?
In another illustrative embodiment, user/HUD monitors that layer 310 and bus/controller layer 320 can be with Fig. 2
Driver execution environment 212 be associated, and environment layer 330 can perform ring with the non-driven program of Fig. 1
Each in border 222 and 232 is associated.
When user 302 performs (312) U/I action, monitor at user/HUD and start data stream at layer 310.
Proceeding to bus/controller layer 320, U/I action (or it represents) can be broadcasted (322) to all non-driven programs
Perform environment.Then, each environment layer 330 repeatable (332) this UI at driver execution environment
Action (such as, in a substantially simultaneous manner).Subsequently can be from each environment layer 330 to bus/controller
Layer 320 returns (334) UI result.UI result can assemble (324) at bus/controller layer 320, and can
Monitored that layer 310 reports that (314) are to user 302 by user/HUD.Data stream can be at layer 310,320 and 330
Between continue in a looping fashion, until complete all of UI test.
Fig. 4 shows the stream of the specific embodiment of the method 400 testing user interface in multiple execution environment
Cheng Tu.In an illustrative embodiment, method 400 can be by the system 200 of the system 100 or Fig. 2 of Fig. 1
Perform.
Method 400 includes: 402, selects be associated with application program based on user interface (UI)
Individual or multiple tests, and 404, select multiple execution environment.A quilt in the plurality of execution environment
It is appointed as driver execution environment, and at least two performs environment at display resolution, language, software
Application program, operating system, hardware structure, driver, version, other environmental variables or some its
His characteristic aspect is different.Such as, with reference to Fig. 1, optional one or more UI test to hold
Perform at row environment 120,130 and 140.Wherein " performing environment A " is driver execution environment 120.
Method 400 also includes: 406, initializes the communication agent at each execution environment.Such as, ginseng
Examining Fig. 1, communication agent 122,132 and 142 can be initialised, and (such as, the main frame including communication agent should
Can be activated at each execution environment 120,130 and 140 by program).Method 400 farther includes:
408, show the driver UI corresponding with driver execution environment.Such as, with reference to Fig. 1, HUD
110 can perform environment 120 by display driving software.
Method 400 includes: 410, receives and one or more test phases at driver execution environment
The U/I action of association.Such as, with reference to Fig. 1, UI can be received at driver execution environment 120 and move
Make 104.Method 400 also includes: 412, and U/I action is converted into one group of input device controls.Input
Equipment can be keyboard or mouse, and input device controls can be a keyboard entry, mouse moves or mouse
Click on.Such as, with reference to Fig. 1, U/I action 104 can be converted into U/I action and represent 124, wherein UI
Action represents that 124 include input device controls.
Method 400 farther includes: 414, and this group input device controls slave driver is performed environment
The communication agent at place is sent to each by communication bus, and other perform the communication agent at environment.Input sets
Standby control can be broadcasted by Serialization formats.Substantially simultaneously at each, other perform environment to U/I action
Place repeats.Such as, with reference to Fig. 1, U/I action represents that 124 can be via communication bus 150 from communication agent
122 broadcast are to communication agent 132,142, and U/I action 104 can substantially simultaneously be held at each
Repeat at row environment 130,140.
Each U/I action being associated with one or more tests can be recycled back into by method 400 from 414
To 410.The method terminates (when such as, completing) when these one or more tests 416.
Fig. 5 is the screenshot capture of the specific embodiment looking squarely display picture (HUD) 500, and HUD 500 shows
Driver execution environment 502 and other execution environment 504,506,508 and 510.Say at one
In bright property embodiment, HUD 500 can include the HUD 211 of the HUD 110 or Fig. 2 of Fig. 1.
In specific embodiment illustrated in fig. 5, driver execution environment 502 is 64 English 2008
Version operating system environment, it has the RAM of 8GB.First non-driven program execution enviroment 504 is 32
Position 2010 editions operating system environments of English, it has the RAM of 2GB.Second non-driven program performs ring
Border 506 is 2010 editions operating system environments of 64 Japanese, and it has the RAM of 4GB.3rd non-driven
Program execution enviroment 508 is 2006 editions operating system environments of 64 English, and it has the RAM of 1GB.
4th non-driven program execution enviroment 510 is 2008 editions operating system environments of 32 Arabic, and it has
The RAM of 512MB.
Driver execution environment 502 can show at HUD 500.User can perform ring with driver
Border 502 interacts (such as, via keyboard, mouse or other input equipments).When user performs a certain
During U/I action, this U/I action substantially simultaneously performs at environment 504,506,508 and 510 at other
Repeat.Other UI states performed at environment 504,506,508 and 510 each can be displayed on
At HUD 500.In one embodiment, UI state can via with other perform environment 504,506,
The RDP session of 508 and 510 shows.Other perform environment 504,506,508 and 510 can position
On the calculating equipment identical with driver execution environment 502, or it is positioned on different calculating equipment.This
Outward, in one embodiment, HUD 500 be displayed at not including any these perform environment 502,
504, on the calculating equipment of 506,508 and 510.
HUD 500 can show visual indicator 512 when UI state mismatch being detected.Display visually indicates
Symbol 512 comprises the steps that and changes and color, font or the frame performing environmental correclation connection.Such as, at Fig. 5
In the specific embodiment illustrated, make a mistake at the 4th non-driven program execution enviroment 510.Therefore,
Four non-driven program execution enviroment 510 instruction and the state mismatch of driver execution environment 502.Work as detection
During to state mismatch, HUD 500 can provide a method to record this state mismatch.Such as, HUD 500
Can include that bug submits dialog box 514 to, this dialog box may operate to record this state mismatch.
It is appreciated that the HUD 500 of Fig. 5 can provide easily to being test for each execution environment
Show simultaneously.It is further appreciated that the HUD 500 of Fig. 5 can automatically provide hidden when state mismatch being detected
Wrong reporting capabilities.
Fig. 6 depicts computer implemented method, the computer program including can be used for supporting according to the present invention
The block diagram of the computing environment 600 calculating equipment 610 of each embodiment of product and system component.Say one
In bright property embodiment, calculating equipment 610 can include system 100 or its assembly, the system 200 of Fig. 2 of Fig. 1
Or one or more in the layer 310,320 and 330 of its assembly, Fig. 3.The system 100 of Fig. 1 or its
Each in the layer 310,320 and 330 of assembly, the system 200 of Fig. 2 or its assembly and Fig. 3
Calculating equipment 610 or one part can be included or use calculating equipment 610 or one part to realize.
Calculating equipment 610 includes at least one processor 620 and system storage 630.Depend on that calculating sets
Standby configuration and type, system storage 630 can be volatibility (such as random access memory, i.e.
" RAM "), non-volatile (such as read only memory (i.e. " ROM ") even if, flash memory and
Also the similar memory devices of the data stored is maintained when not providing power supply) or some combination of the two.
System storage 630 generally includes: operating system 632, one or more application platform 634,
Individual or multiple application programs, and routine data 638.
Such as, system storage 630 can include HUD logic 636 and status comparator 637.One
In illustrative embodiment, HUD logic can generate and update the HUD 211 of the HUD 110 or Fig. 2 of Fig. 1.
HUD can be display configured to multiple execution environment, and one of them execution environment is designated as driver and holds
Row environment.HUD is also configured to receive and (such as, tests phase with UI at driver execution environment
Association) U/I action, and the expression slave driver of this U/I action is performed environment be sent to each other
Perform environment.U/I action can repeat during substantially simultaneously at each, other perform environment.Epidemic situation comparison
Device may compare each state performing environment.
Calculating equipment 610 also can have supplementary features or function.Such as, may also include can for calculating equipment 610
Mobile and/or irremovable additional data storage device, depositing of such as disk, CD, tape and normal size
Card storage or flash card.Such additional storage is in figure 6 by removable storage 640 and irremovable storage
650 illustrate.Computer-readable storage medium can include for storing such as computer-readable instruction, data knot
Volatibility that any technology of the information such as structure, program assembly or other data realizes and/or non-volatile memories with
And may move and/or irremovable medium.System storage 630, removable storage 640 and irremovable deposit
Storage 650 is all the example of computer-readable storage medium.Computer-readable storage medium include, but not limited to RAM,
ROM, Electrically Erasable Read Only Memory (EEPROM), flash memory or other memory technology,
Compact-disc (CD), digital versatile disc (DVD) or other optical storage, cartridge, tape, disk
Storage or other magnetic storage apparatus or can be used for storage information and can by calculating equipment 610 access appoint
What its medium.Any such computer-readable storage medium can be a part for calculating equipment 610.
Calculating equipment 610 may also comprise input equipment 660, as keyboard, mouse, pen, voice-input device,
Touch input device etc..May also comprise outut device 670, such as display, speaker, printer etc..
Input equipment 660 and outut device 670 may operate to receive U/I action from user 692, and to user 692
Visual indicator is provided.Calculating equipment 610 also comprises permission calculating equipment 610 by wired or wireless network
The one or more communication connections 680 communicated with other calculating equipment 690.One or more communication link
Connect the communication between the 680 multiple virtual machines also allowing at calculating equipment 610.In one embodiment,
One or more communication connections 680 include the communication bus 240 of the communication bus 150 or Fig. 2 of Fig. 1.Logical
Letter bus is alternatively coupled to multiple execution environment, and can between multiple execution environment broadcast data.
Be appreciated that and assembly shown in not all Fig. 6 or described in accompanying drawing the most previously or
Equipment is all to support necessary to embodiment described herein.Such as, removable storage 640 can be can
Optional.
Explanation to embodiment described herein aims to provide the substantially reason of the structure to each embodiment
Solve.These explanations are not intended to be used as the institute to the device and system utilizing structure described herein or method
There is the complete description of element and feature.Other embodiments many are reading over this to those skilled in the art
It is apparent from after invention.Can utilize and derive other embodiments from the present invention, so that can make
Go out structure and logic is replaced and changes without departing from the scope of the present invention.Therefore, the present invention and each accompanying drawing should be by
It is considered illustrative rather than restrictive.
Those skilled in the art it can also be appreciated that combine various illustrative logical blocks disclosed herein, configuration,
Module and process steps or instruction can be implemented as electronic hardware or computer software.Various Illustrative components,
Frame, configuration, module or step describe substantially according to its function.This function is implemented as hardware also
It is that software depends on that applied in total system specifically applies and design constraint.Technical staff can be for often
Plant concrete application and realize described function collection by different way, but this type of design decision is not necessarily to be construed as
Cause a departure from the scope of the present disclosure.
Each step in conjunction with the method described by embodiments disclosed herein or algorithm can be directly with hard
Part, processor software module or a combination of both of performing realize.Software module may reside within meter
In calculation machine computer-readable recording medium, such as random access memory (RAM), flash memory, read only memory (ROM), depositor,
Hard disk, moveable magnetic disc, the storage medium of any other form of CD-ROM or known in the art.Show
Example storage medium is coupled to processor so that processor can read information from this storage medium, and to
This storage medium write information.In alternative, storage medium is desirably integrated into processor or processor
Can reside in calculating equipment or computer system as discrete assembly with storage medium.
Although being shown in which and having described detailed description of the invention, it should be appreciated that can be shown concrete
Embodiment is replaced and is designed to reach any follow-up arrangement of same or similar purpose.It is contemplated that cover
Any and all follow-up change of each embodiment and variant.
It will be appreciated that scope that will explain or limit claim without it while submitting the summary of the present invention to
Or implication.It addition, in detailed description of the invention above, can be overall for the present invention being linked to be one
Purpose and by the combination of various features or be described in and be placed on together in single embodiment.This invention will not explained
For reflecting that embodiment required for protection requires than the more features being expressly recited in each claim
It is intended to.On the contrary, as the following claims reflect, subject of the present invention can relate to less than disclosed enforcement
All features of any one in mode.
Before offer, the description to each embodiment is to make those skilled in the art can make or use respectively
Embodiment.Various amendments to these embodiments will be apparent from for those skilled in the art, and
And generic principles defined herein as can be applied to other embodiments without departing from the scope of the present disclosure.Cause
This, the present invention is not intended to be limited to each embodiment shown in this article, but according to as wanted by following right
Ask principle that book defines and the consistent widest range as far as possible of novel feature.
Claims (13)
1. in multiple execution environment, test a computer implemented method for user interface, including:
Select the one or more tests being associated with application program based on user interface UI;
Selecting multiple execution environment, one in wherein said multiple execution environment is designated as driver and holds
At least two in row environment, and the plurality of execution environment is different types of execution environment;
Show the driver UI corresponding with described driver execution environment;
Receive at described driver UI and test, with the one or more, the U/I action being associated;By institute
The expression stating U/I action is sent to each other execution environment from described driver execution environment, wherein
Substantially simultaneously at each, other perform to repeat at environment described U/I action;
Relatively and detect described driver execution environment with other perform environment state in mismatch;And
Described driver execution environment and other state mistakes performing between two in environment detected
Timing shows a visual indicator.
Computer implemented method the most as claimed in claim 1, it is characterised in that also include: in institute
State reception the second U/I action at driver UI, and by the expression of described second U/I action from described driving
Program execution enviroment is sent to each, and other perform environment.
Computer implemented method the most as claimed in claim 1, it is characterised in that send described UI
The expression of action includes: described U/I action is converted into one group of input device controls and send this group input set
Standby control.
Computer implemented method the most as claimed in claim 3, it is characterised in that described one group of input
Equipment control include keyboard key in, mouse move, click, stylus control, touch screen control, multiple spot
Touch control or above any combination.
Computer implemented method the most as claimed in claim 3, it is characterised in that described one group of input
Equipment controls to send with Serialization formats.
Computer implemented method the most as claimed in claim 1, it is characterised in that send described UI
The expression of action includes: broadcasted the expression of described U/I action, described communication bus coupling by communication bus
Close each in the plurality of execution environment.
Computer implemented method the most as claimed in claim 1, it is characterised in that described driver
UI looking squarely display picture HUD place display, described in look squarely show picture be configured to the most the plurality of holding
Each in row environment.
Computer implemented method the most as claimed in claim 7, it is characterised in that described in visually indicate
Symbol instruction the first execution environment has the first state, and this first state is different from the second shape of the second execution environment
State.
Computer implemented method the most as claimed in claim 8, it is characterised in that described first state
Or at least one that second in state includes: UI screenshot capture, navigational state, model state, automatization
State, parameter state, one or more performance metric or above any combination.
Computer implemented method the most as claimed in claim 8, it is characterised in that also include: in day
Will file creates entry, to indicate the described first the first state performing environment and described second to perform environment
The second state between difference, and described HUD via with described at least one perform environment long-range
Desktop protocol RDP session shows that at least one performs environment.
11. 1 kinds of computer systems testing user interface in multiple execution environment, including:
Memorizer;And
Being coupled to the processor of described memorizer, wherein said processor is configured to execution and causes user interface
The instruction of the execution of UI test application program, described ui testing application program includes:
Look squarely display picture HUD, be configured to:
Show each in multiple execution environment, a quilt in wherein said multiple execution environment
At least two being appointed as in driver execution environment, and the plurality of execution environment is different types of
Perform environment;
Receive at described driver execution environment and test, with UI, the U/I action being associated;And
The expression of described U/I action is sent to each other from described driver execution environment
Performing environment, substantially simultaneously at each, other perform to repeat at environment wherein said U/I action;
Relatively and detect described driver execution environment with other perform environment state in mistake
Join;And
The shape between two in described driver execution environment and other execution environment being detected
A visual indicator is shown during state mismatch;And
Communication bus, described communication bus is coupled to each in the plurality of execution environment, and quilt
Be configured to from described driver execution environment to each other perform environment broadcast datas.
12. computer systems as claimed in claim 11, it is characterised in that the plurality of execution environment
In at least one farther include: test recorder, be configured to store the expression of multiple U/I action.
13. computer systems as claimed in claim 12, it is characterised in that the plurality of execution environment
In at least one farther include: test player, be configured to reappear the plurality of U/I action.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/720,691 | 2010-03-10 | ||
US12/720,691 US20110225566A1 (en) | 2010-03-10 | 2010-03-10 | Testing user interfaces in multiple execution environments |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102193862A CN102193862A (en) | 2011-09-21 |
CN102193862B true CN102193862B (en) | 2016-12-14 |
Family
ID=
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101221524A (en) * | 2007-01-12 | 2008-07-16 | 群康科技(深圳)有限公司 | Display equipment debugging system and method thereof |
CN101414279A (en) * | 2008-11-18 | 2009-04-22 | 武汉大学 | Test device for credible software stack |
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101221524A (en) * | 2007-01-12 | 2008-07-16 | 群康科技(深圳)有限公司 | Display equipment debugging system and method thereof |
CN101414279A (en) * | 2008-11-18 | 2009-04-22 | 武汉大学 | Test device for credible software stack |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8676723B2 (en) | Automated test system based on three-dimensional application software framework and a method thereof | |
Blackburn et al. | Why model-based test automation is different and what you should know to get started | |
CN100571167C (en) | The method and apparatus of the unit testing of Web service operation flow | |
US8645912B2 (en) | System and method for use in replaying software application events | |
US20130085741A1 (en) | Test Planning Based on Dynamic Coverage Analysis | |
Bellalouna | The augmented reality technology as enabler for the digitization of industrial business processes: case studies | |
US8225140B2 (en) | Method and system for graphical user interface testing | |
US20080320071A1 (en) | Method, apparatus and program product for creating a test framework for testing operating system components in a cluster system | |
US20100250220A1 (en) | System and apparatus for managing test procedures within a hardware-in-the-loop simulation system | |
CN101960448A (en) | Identification of elements of currently-executing component script | |
Liu et al. | An incremental V-model process for automotive development | |
CN105074671A (en) | Method and system for detecting concurrency programming errors in kernel modules and device drivers | |
CN111143200A (en) | Method and device for recording and playing back touch event, storage medium and equipment | |
CN109522075A (en) | Data visualization methods of exhibiting, device, electronic equipment and computer-readable medium | |
US20100235809A1 (en) | System and method for managing a model-based design lifecycle | |
US20160209996A1 (en) | Application menu modification recommendations | |
US10572247B2 (en) | Prototype management system | |
Tierno et al. | Open issues for the automotive software testing | |
Milella | Problem-solving by immersive virtual reality: Towards a more efficient product emergence process in automotive | |
RU2678717C9 (en) | Method for building a software system for automating and visualizing testing of embedded software for electronic devices | |
Canny et al. | Rationalizing the need of architecture-driven testing of interactive systems | |
CN109240928A (en) | A kind of test method, device, equipment and storage medium | |
CN102193862B (en) | User interface is tested in multiple execution environment | |
CN107133072A (en) | One kind operation performs method and apparatus | |
US20210406844A1 (en) | Method for carrying out maintenance work on a complex structural component |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150727 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
GR01 | Patent grant |