WO2013088534A1 - クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム - Google Patents
クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム Download PDFInfo
- Publication number
- WO2013088534A1 WO2013088534A1 PCT/JP2011/078950 JP2011078950W WO2013088534A1 WO 2013088534 A1 WO2013088534 A1 WO 2013088534A1 JP 2011078950 W JP2011078950 W JP 2011078950W WO 2013088534 A1 WO2013088534 A1 WO 2013088534A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- client
- terminal
- screen shot
- portable
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
Definitions
- the present invention relates to accessing a second device from a first device via a network. More particularly, the present invention relates to accessing a remote portable terminal via a network from a client of a user developing software of the portable terminal, and testing the behavior of software installed on the portable terminal. .
- One of the important steps in software development is the step of testing the behavior when the software is actually operated on the target terminal.
- the behavioral test of the software is all the types and operating systems targeted by the software. It is preferably done in a version.
- a service called Keynote DeviceAnywhere has a limitation that dedicated software must be installed on a developer's terminal in order to access a remote portable terminal. This service can not be used from a processing terminal without dedicated software.
- a service called Mobile Cloud is a service using a web browser to access a remote portable terminal.
- this service there is a restriction that it must be a Web browser that can use Flash plug-in.
- This service is, of course, not available to Web browsers that can not use Flash plug-ins.
- One embodiment of the present invention is a server for a client to access one or more mobile terminals via a network.
- the client is connected to the server via the network.
- the server is connected to the one or more mobile terminals.
- Each of the one or more mobile terminals includes display means for displaying information, and is configured to send a screen shot to the server when an instruction is received.
- the screen shot represents the information displayed on the display means.
- the server comprises first means for sending one or more HTML files to the client.
- the one or more HTML files are selected as a character string that causes the client to display a first area for selecting one of the one or more portable terminals when interpreted by the client.
- a character string for sending the terminal ID indicating the mobile terminal to the server, a character string for displaying the screen shot when the screen shot is received, and an input to the one or more mobile terminals A character string for displaying the second area, a character string for converting the received input into a command for the one or more portable terminals, and a character string for sending the command for the one or more portable terminals to the server And contains.
- the server also comprises one or more second means.
- Each of the one or more second means is associated with each of the one or more portable terminals, each of the one or more second means sends the indication to the associated portable terminal, the one or more second means. It is configured to send the command to the associated mobile terminal when the command for the mobile terminal is received.
- the server when the server receives the screen shot from the portable terminal indicated by the terminal ID received by the server, the server sends the screen shot to the client, and the server receives the screen shot from the one or more portable terminals.
- the server receives the command, the command is sent to the second means associated with the portable terminal indicated by the terminal ID received by the server among the one or more second means. It has the means.
- the one or more HTML files may further include a string that, when interpreted by the client, causes the client to establish a two-way connection with the computer using a protocol.
- the server is configured to interpret the protocol. Through the connection, the terminal ID, the screen shot and the command can be sent and received between the client and the server.
- the server may further include fourth means for converting the screen shot received by the server according to an encoding scheme.
- the coding scheme is such that it is possible to send the screen shots transformed by the coding scheme over the connection.
- the server may further include fifth means for sending a program to a portable terminal indicated by the received terminal ID when the server receives the terminal ID.
- each of the one or more portable terminals may further include a storage unit in which data corresponding to the information displayed on the display unit is stored.
- the program sent to the portable terminal indicated by the received terminal ID can cause the portable terminal to convert the data stored in the storage means into data of a format that can be displayed by the client.
- the screen shot may include the data in a format that can be displayed by the client.
- the screen shot may include an image of the screen of the display means.
- the character string included in the one or more HTML files includes one or both of an HTML tag conforming to HTML5 and JavaScript (registered trademark), and the HTML tag is a link to a file including JavaScript (registered trademark) Can contain tags for
- the protocol may include the WebSocket protocol, the encoding scheme may include Base64, and the format may include one or both of Portable Network Graphics (PNG) format and Joint Photographic Experts Group (JPEG) format.
- PNG Portable Network Graphics
- JPEG Joint Photographic Experts Group
- Another embodiment of the present invention is a system including the server and the one or more mobile terminals.
- Another embodiment of the present invention is a method for accessing one or more mobile terminals from a client via a network.
- the first means sends the one or more HTML files to the client
- the third means receives the command for the one or more portable terminals.
- the second means sends the instruction to the associated portable terminal
- the third means includes
- the server receives the screen shot from the portable terminal indicated by the terminal ID received by the server, the screen shot is sent to the client And a step.
- the method may further include the step of the fourth means to transform the screen shot received by the server according to an encoding scheme.
- the method may further include the fifth means sending a program to a portable terminal indicated by the received terminal ID when the server receives the terminal ID.
- Yet another embodiment of the present invention is a program that causes a computer to function as a server for accessing one or more mobile terminals from a client via a network.
- This program causes a computer to function as one or more of the above means.
- the above service can be provided even when the data that can be transmitted and received between the client and the server is limited.
- HTML5 is in the limelight.
- This technology is a technology expected to replace the Flash plug-in described above.
- WebSocket As a technology related to HTML5, there is a technology called WebSocket, and work on its standardization is in progress.
- WebSocket is a technology that enables HTTP-based full two-way communication between a client and a server, which has not been possible in the past. Web browsers that support these HTML5 and WebSockets are expected to be widely disseminated.
- the above service can be provided to more clients.
- FIG. 1 is a block diagram illustrating an embodiment of the present invention. It is a flowchart which shows a terminal selection process. It is a flowchart which shows a screen shot acquisition process. It is a flowchart which shows a portable terminal access process. It is a flowchart which shows a terminal selection cancellation
- a "computer” is a device including computing means which are hardware resources, control means, storage means, input means, and output means.
- the calculation means and control means include a CPU, an MPU and the like.
- the storage means includes a memory, a hard disk, an SSD and the like.
- the input means includes a mouse, a keyboard, a touch panel, a network interface and the like.
- the output means includes a network interface, a display, a printer, a speaker and the like. Two or more of the operation means, the control means, the storage means, the input means, and the output means can be physically one by using an FPGA, a microcomputer or the like.
- One or more of the hardware resources such as computing means, control means, storage means, input means and output means cooperate with an arbitrary program which is software to realize each "means” described below It will be apparent to those skilled in the art that each "process" can be performed.
- a “server” is a computer for providing a service.
- One service in one embodiment described below is a service that provides the user of this service with access to a remote portable terminal. It goes without saying that different services can be provided in alternative embodiments.
- a "client” is a computer for receiving a service.
- a “mobile device” is a portable computer, which is a mobile phone, tablet or laptop computer of the Android platform, iPhone or iPod Touch or iPad of the iOS platform, and Windows (registered trademark) of the Windows (registered trademark) Mobile platform. Trademarks Including Phone etc. In one embodiment described below, it is assumed that the "mobile terminal” is a mobile phone of the Android platform.
- HTML file is a file that contains a string described in Hypertext Markup Language. This string functions as an instruction to the computer, and can include one or both of an HTML tag and JavaScript (registered trademark).
- the HTML tag can include a tag for a link to a file including JavaScript (registered trademark).
- HTML tags can be tags that conform to HTML5.
- FIG. 1 is a block diagram showing an embodiment of the present invention.
- the server 100 relays the interaction between the user's client 120 and the mobile terminal 130 in order for the user to access the remote mobile terminal.
- the server 100 is physically shown as one in this figure, the server may be composed of a plurality of computers.
- a client 120 is connected to the server 100 via a network 110.
- a web browser such as Safari is operating on the client 120 so that the client can interpret the character string contained in the HTML file.
- any client 120 capable of interpreting the strings contained in the HTML file can be used.
- one client 120 is shown in this figure, a plurality of clients can be connected to the server 100.
- three portable terminals 130a to 130c are connected to the server 100.
- the portable terminals 130a to 130c have display means 131a to 131c for displaying information, for example, a liquid crystal display. These portable terminals are configured to send a screen shot to the server 100 when receiving an instruction.
- the “screen shot” represents the information displayed on the display means 131 of the portable terminal 130, and is, for example, an image of a screen displayed on the liquid crystal display.
- the portable terminals 130a-c can include storage means 132a-c in which data corresponding to the information displayed on the display means 131a-c is stored. The storage means 132a to 132c will be described later.
- three portable terminals 130a to 130c are shown in this figure, one or more arbitrary number of portable terminals can be connected to the server 100.
- the server 100 comprises means 101 for sending one or more HTML files to the client 120.
- This means can be realized, for example, by an http daemon operating on the server 100.
- the one or more HTML files when interpreted by the client 120, cause the client to display an area for selecting one of the portable terminals 130, as will be described later with reference to FIG. Includes a character string that causes the server 100 to send a terminal ID indicating the selected portable terminal when one of the portable terminals 130 is selected.
- the one or more HTML files when interpreted by the client 120, may cause the client to receive this screen shot from the portable terminal 130 via the server 100, as described below with respect to FIG. 3b. Contains the text to be displayed.
- the one or more HTML files are strings that, when interpreted by the client 120, cause the client to display an area for receiving input to the mobile terminal, as described below with reference to FIGS. 2c and 3b. It includes a character string for converting the received input into a command for the portable terminal, and a character string for sending a command for the portable terminal to the server 100.
- the one or more HTML files may further include a character string that, when interpreted by the client 120, causes execution of processing described later with reference to FIGS. 2 and 3 and display of a screen.
- the server 100 also comprises means 102a-c, each associated with each of the mobile terminals 130a-c. Although three means 102a to 102c are shown in this figure, it goes without saying that the number of means 102 is increased or decreased according to the number of portable terminals connected to the server 100.
- the means 102 sends a screen shot acquisition instruction to the associated portable terminal 130.
- the means 102 also sends the command to the associated portable terminal 130 when it receives the above command for the portable terminal.
- the means 102 can be realized by a terminal control daemon operating on the server 100.
- a plurality of daemons can be executed on the server 100. When a daemon is newly executed on the server 100, means 102 corresponding to the daemon is newly added to the server 100.
- the server 100 includes means 103 for transferring data received by the server to each means provided in the server and the client 120.
- the means 103 sends the screen shot to the client 120 when the server 100 receives the terminal ID from the client 120 and receives a screen shot from the portable terminal indicated by the terminal ID.
- the means 103 sends this command to a specific portable terminal when the server 100 receives the above terminal ID from the client 120 and then receives the above command for the portable terminal from the client 120.
- the specific mobile terminal is a mobile terminal indicated by the received terminal ID among the mobile terminals 130.
- the one or more HTML files may further include a string that, when interpreted by the client 120, causes the client to establish a two-way connection with the server 100 using a protocol.
- the server 100 is configured to be able to interpret the above protocol.
- an example of a certain protocol is the WebSocket protocol.
- transmission and reception of data via the connection may be limited. More specifically, in a general computer, data is represented as a set of 8-bit numerical values, that is, numerical values from 0 to 255, but through the above connection, data including some numerical values other than those numerical values. Can not be sent or received. For example, some clients 120 may implement only a part of the WebSocket protocol in the specification of the Web browser in operation, and humans such as alphabets and numbers may be connected via the connection using the WebSocket protocol. It may not be possible to send or receive data that contains numerical values other than those that indicate the characters used to create a sentence. On the other hand, in general, the screen shot of the portable terminal 130 is data that can include all the values of 0 to 255 described above.
- the server 100 can further include means 104 for converting the screen shot received by the server from the portable terminal 130 according to a certain encoding scheme.
- the coding scheme may be any coding scheme that is capable of sending screen shots transformed by the coding scheme over the connection.
- the screen shot can be converted by the Base 64.
- the means 102 sends the converted screen shot to the client 120.
- the server 100 may comprise means 105 for sending a program to the mobile terminal 130 in order to cause the mobile terminal 130 to perform a specific process.
- the means 105 sends the program to the portable terminal indicated by the terminal ID when the server 100 receives the terminal ID in the terminal selection process described later with reference to FIG. 2a.
- the means 105 is adapted to connect the portable terminal with the program when the portable terminal is newly connected to the server 100 at another appropriate time, for example, in the portable terminal registration process described later with reference to FIG. 2e. It can be sent to the terminal.
- the load on the server 100 can be reduced, and load distribution can be realized.
- the means 105 is useful when there is no function of acquiring a screen shot in the portable terminal 130, for example, the API of the OS operating on the portable terminal, for security or the like.
- the storage unit 132 described above, for example, a frame buffer in which data corresponding to an image on the screen of the liquid crystal display is stored.
- the data stored in the frame buffer is data in a format dependent on the portable terminal, and is generally not data in a format that can be displayed by the client 120.
- the program may be a program that causes the portable terminal 130 to convert the data stored in the storage unit 132 into data in a format that can be displayed by the client 120.
- the format that can be displayed depends on the client.
- the format is not limited. For example, Portable Network Graphic (PNG) format, Joint Photographic Experts Group (JPEG) format, Graphics Interchange Format (GIF) format, etc. Clients will be able to view.
- PNG Portable Network Graphic
- JPEG Joint Photographic Experts Group
- GIF Graphics Interchange Format
- the server 100 includes one or both of a unit that stores the HTML file and the program, and a unit that acquires the HTML file and the program from a device different from the server. Can.
- processing in an embodiment of the present invention will be described. However, processing that is general in the field related to the present invention, for example, processing for a user to log in to the server 100, and the like will be omitted.
- FIG. 2a is a flow chart showing a terminal selection process performed when the user selects a portable terminal to access.
- the client 120 having received the selection of the portable terminal from the user sends a terminal ID indicating the selected portable terminal to the server 100 (step 211). How the user selects the mobile terminal will be described later with respect to FIG. 3a.
- the means 103 sends an instruction to start repeating the screen shot acquisition process described later to the means 102 associated with the portable terminal indicated by the ID (step 212).
- the means 103 receives the terminal ID itself or the portable terminal indicated by the ID by an arbitrary method. Some information indicative of the terminal can be stored.
- the means 103 can store the correspondence between one of the clients and the terminal ID received from the client by an arbitrary method.
- the means 102 that has received the instruction starts repeating the screen shot acquisition process described later (step 213). Since this process can be repeated asynchronously with other processes, it can be executed by the screen shot acquisition thread created by the means.
- FIG. 2b is a flowchart showing the screen shot acquisition process.
- the means 102 sends the screen shot acquisition instruction described above to the associated portable terminal 130 (step 221).
- the portable terminal 130 that has received the instruction acquires a screen shot, and sends the acquired screen shot to the server 100 (step 222).
- the means 103 converts the screen shot by the Base 64 (step 223). Note that this step may be performed by the portable terminal 130 in step 222. In addition, as described above, this step is performed because there is a limit to data transmission and reception between the server 100 and the client 120. In alternative embodiments, where there is no such limitation, it can be omitted.
- the means 103 sends the converted screen shot to the client 120 (step 224).
- the client 120 having received the screen shot displays the screen shot (step 225). How the screen shot is displayed will be described later with respect to FIG. 3b.
- FIG. 2c is a flow chart showing a mobile terminal access process performed when the user accesses the mobile terminal.
- the client 120 receiving the input from the user converts the input into a command for the portable terminal (step 231). How to receive input will be described later with respect to FIG. 3b.
- the command to the portable terminal includes a command to generate an event on the portable terminal, which occurs when flick operation, tap operation, soft key input and hard key input are performed on the portable terminal.
- the client 120 sends a command for the mobile terminal to the server 100 (step 232).
- the means 103 sends the command to the means 102 associated with the portable terminal 130 indicated by the previously received terminal ID (step 233).
- the means 102 receiving the command of the portable terminal sends the command to the associated portable terminal 130 (step 234).
- the portable terminal 130 which has received the command of the portable terminal generates an event corresponding to the command (step 235).
- the occurrence of this event causes some kind of behavior to occur on the portable terminal 130.
- This behavior includes a change on the screen of the display means 131 provided in the portable terminal 130, for example, a liquid crystal display.
- the changed screen shot will be displayed on the client 120 by the above-described screen shot acquisition processing being executed asynchronously.
- software developed by the user can be sent and installed on the mobile terminal 130.
- such software can be executed on the mobile terminal 130, and an arbitrary event can be generated to test the behavior of the software on the mobile terminal 130.
- commands to the mobile terminal can also be sent to the server 100 according to the test code written by the user.
- step 231 is omitted.
- FIG. 2d is a flow chart showing a terminal selection cancellation process which is executed when the user cancels the selection of the portable terminal to access.
- the client 120 sends the server 100 an instruction to cancel the selection of the portable terminal (step 241).
- the means 103 sends an instruction to end the repetition of the screen shot acquisition process to the means 102 associated with the portable terminal indicated by the terminal ID received earlier by the server 100 (step 242) .
- the means 102 having received the instruction ends the repetition of the screen shot acquisition process (step 243).
- the screen shot acquisition process is executed by the screen shot acquisition thread, the thread is deleted.
- FIG. 2e is a flowchart showing a portable terminal registration process which is executed when a portable terminal is newly connected to the server 100.
- the means 103 acquires information on the connected portable terminal (step 251).
- This information can be acquired by a tool included in a software development environment for Android platform such as adb when the mobile terminal is a mobile phone of Android platform or the like. Further, this information includes the terminal ID of the mobile terminal, the model name, the maker name, the installed OS version and the like. Also, this step can include the step of the means 103 storing the information in any manner.
- means 103 adds a new means 102 associated with the connected portable terminal (step 252).
- the means 102 is realized by the terminal control daemon, by starting a new terminal control daemon on the server 100, the new means 102 is added to the server.
- UI components are, for example, labels, text boxes, buttons, radio buttons, check boxes.
- FIG. 3a shows a screen 300 for the user to select a mobile terminal to access.
- each of the portable terminals 130a to 130c connected to the server 100 is displayed.
- This information can include the model name of the mobile terminal, the manufacturer name, the installed OS version, and the like.
- This information may include the terminal ID of the portable terminal.
- each of the areas 302a to 302c information indicating the state of each of the portable terminals 130a to 130c is displayed.
- This information is, for example, a "Preparing" string that is displayed when connected but can not be selected for some reason, and is displayed when another user has already selected It includes a character string “under selection” and a “selectable” character string indicating that the user can select.
- a "Preparing” string that is displayed when connected but can not be selected for some reason, and is displayed when another user has already selected It includes a character string “under selection” and a “selectable” character string indicating that the user can select.
- the rest is “in preparation” or “in selection of another user”.
- Region 303 is used when the user selects a portable terminal.
- only the mobile terminal 130 b can be selected, so only the area 303 b corresponding to the mobile terminal is displayed.
- the corresponding portable terminal is selected.
- the terminal ID indicating the selected portable terminal is sent from the client 120 to the server 100.
- FIG. 3b shows a screen 310 for the user to access the mobile terminal and to test the behavior of the mobile terminal.
- a screen shot of the portable terminal 130 received by the client 120 from the server 100 is displayed.
- the client 120 can automatically update this area and always keep displaying the latest screen shot.
- an arbitrary image can be displayed before the client 120 receives a screen shot.
- this input causes an event that occurs when an input such as a flick operation and a tap operation is performed on the mobile terminal to be generated on the mobile terminal. Converted to a command.
- Region 312 is used to perform soft key input at the mobile terminal.
- the input is converted into a command that causes an event on the portable terminal to occur when the corresponding soft key input is performed on the portable terminal 130.
- the area 313 is used to perform hard key input in the portable terminal.
- the hard keys are "BACK”, "HOME” and "MENU” keys
- three areas 313a-c are displayed in this figure.
- the number of areas 313 increases or decreases depending on the assumed number of hard keys.
- this input is converted into a command that generates an event on the portable terminal that occurs when a hard key input corresponding to the selected area is performed on the portable terminal 130. Ru.
- Field 314 is used to enter test code.
- the user can enter a test code for the mobile terminal in area 314.
- the test code includes code for generating one or more of the above-described events on the mobile terminal.
- test code also checks whether the state of the UI component displayed on the mobile device meets certain conditions, eg whether the string entered in the text box matches a specific string Contains code to The above condition is hereinafter referred to as "test case”.
- the test code can include multiple test cases.
- test code includes code for saving the screen shot displayed in the area 311 at any time.
- the screen shot can be stored in the client 120 or the server 100 in any manner.
- the user can write the test code using one of a plurality of UI test libraries.
- UI test libraries are the libraries named Monkey Runner, Native Driver and Android Driver. Because the above code is different for each UI test library, the user can select a preferred UI test library, as described below with respect to FIG. 3f.
- Region 315 is used to execute the entered test code.
- the client 120 sends a command to the mobile terminal 130 to the server 100 according to the test code entered in the area 314, the test case is checked, and the screen shot is saved.
- Field 316 is used to save the entered test code.
- the input test code is stored in client 120 or server 100 in any manner.
- An area 317 displays information for assisting the input of the test code.
- a code corresponding to the input is displayed at 317.
- the user can input a test code in area 314 using the code displayed in area 317.
- Area 318 is used to save the screen shot displayed in area 311.
- the screen shot displayed in the area 311 when the area 318 is selected is stored in the client 120 or the server 100 by any method.
- Field 319 is used to enter a comment for the code displayed in field 317. Comments entered in area 319 can be displayed in area 317 along with the code. For example, when the user inputs a character string in the area 319 and presses the Enter key, the input character string can be output to the area 317 as a comment.
- Areas 320 and 321 are used to select and deselect mobile terminals.
- the screen shown in FIG. 3a is displayed.
- the terminal selection cancellation process is performed.
- FIG. 3c shows a screen 330 for managing the test.
- the area 331 is used to specify software to be installed on the mobile terminal 130.
- the client 120 is a computer on which a desktop environment such as Mac OS X operates
- the user drags a file of software to be designated onto the area 331 using an optional input means (not shown) provided in the client 120.
- the software can be uploaded to the server 100 by dropping it.
- the area 332 is used to install the uploaded software on the mobile terminal 130. When this area is selected, the uploaded software is installed on the selected portable terminal.
- the area 333 is used to delete the uploaded software from the server 100.
- An area 334 is a button for creating a test class.
- the test class is a unit of test, and for each test class, the input test code, the used UI test library, the test results to be described later, and the like are managed. Once area 334 is selected, a test class creation screen, described below with respect to FIG. 3f, is displayed.
- An area 335 displays information on the created test class. This information includes the name of the test class, the name of the UI test library to be used, the last modification date of the test code, etc. Also, although not shown, the area 335 can include an area used to change the name of a test class or the like, or delete a test class being created. Although three areas 335a to c are displayed in this figure, it goes without saying that the number depends on the number of test classes created.
- FIG. 3d shows a screen 340 showing the test history.
- Each of the areas 341a-c corresponds to one test, and one test includes one execution of the test code.
- An area 341 displays the result of the test code execution. Thus, this figure shows that the test code has been executed three times so far.
- the test code can contain multiple test cases, and these areas will contain the string "OK” when all of these multiple test cases are satisfied, otherwise Can display the string "ERROR".
- a screen will be displayed showing the details of the results described below with respect to FIG. 3e, corresponding to the selected areas.
- each of the areas 342a-c information indicating the mobile phone 130 selected when the test code corresponding to each of the areas 341a-c was executed is displayed.
- a log regarding the execution of the test code corresponding to each of the areas 341a-c is displayed.
- This log contains the time taken to execute the test code, the number of unmet test cases, information indicating the unmet test cases, the date and time of completion of the test code execution, and the like.
- test cases can be named, and the information indicating the test cases includes the name of the test case.
- FIG. 3e shows a screen 350 for displaying details of the results of one test code execution.
- An area 351 displays the result of the test code execution described above.
- An area 352 displays information indicating the mobile phone 130 selected when the test code was executed as described above.
- An area 353 displays a log related to the execution of the test code described above.
- An area 354 displays information indicating a test case included in the executed test code.
- An area 355 displays a screen shot saved during execution of the test code. If multiple screenshots are saved while the test code is running, multiple screenshots are displayed.
- the user can install any software on the selected mobile terminal.
- the screen 350 After installing the software and executing any test code, the behavior of the software on the portable terminal 130 can be confirmed by referring to this screen.
- FIG. 3f shows a screen 360 for creating a new test class.
- Field 361 is used to enter the name of the test class.
- Each of the areas 362a-c is associated with each of the prepared UI test libraries, and is used to select a UI test library to be used in this test class. Although three areas 362a to 362c are shown in this figure, it goes without saying that the number of areas 362 also increases or decreases according to the number of prepared UI test libraries.
- Field 363 is used to create a test class. When this area is selected, a test class is created together with the test class name input to the area 361 and the UI test library corresponding to the selected area 362. The created test class will be added to the screen described above with respect to FIG. 3c.
- server 101 first means 102 second means 103 third means 104 fourth means 105 fifth means 110 network 120 client 130 portable terminal 131 display means 132 storage means
Abstract
Description
領域363は、テスト・クラスを作成するために使用される。この領域が選択されると、領域361に入力されたテスト・クラス名及び選択された領域362に対応したUIテスト・ライブラリとともにテスト・クラスが作成される。作成されたテスト・クラスは、図3cに関して前述した画面に追加されることになる。
101 第1の手段
102 第2の手段
103 第3の手段
104 第4の手段
105 第5の手段
110 ネットワーク
120 クライアント
130 携帯端末
131 表示手段
132 記憶手段
Claims (13)
- クライアントからネットワークを介して1以上の携帯端末にアクセスするためのサーバであって、前記クライアントは前記ネットワークを介して前記サーバに接続され、前記サーバは前記1以上の携帯端末に接続され、前記1以上の携帯端末の各々は、情報を表示するための表示手段を備え、指示を受けたときにスクリーンショットを前記サーバに送り、前記スクリーンショットは、前記表示手段に表示された情報を表し、前記サーバは、
1以上のHTMLファイルを前記クライアントに送る第1の手段であって、前記1以上のHTMLファイルは、前記クライアントが解釈したときに、該クライアントに、前記1以上の携帯端末のうちの1つを選択するための第1の領域を表示させる文字列と、選択された前記携帯端末を示す端末IDを前記サーバに送ることをさせる文字列と、前記スクリーンショットを受けたときに該スクリーンショットを表示させる文字列と、前記1以上の携帯端末への入力を受けるための第2の領域を表示させる文字列と、受けた前記入力を前記1以上の携帯端末に対するコマンドに変換させる文字列と、前記1以上の携帯端末に対する前記コマンドを前記サーバに送ることをさせる文字列とを含む、第1の手段と、
1以上の第2の手段であって、該1以上の第2の手段の各々は、前記1以上の携帯端末の各々に関連し、該1以上の第2の手段の各々は、前記指示を関連した携帯端末に送り、前記1以上の携帯端末に対する前記コマンドを受けたときに該コマンドを関連した前記携帯端末に送る、1以上の第2の手段と、
前記サーバが受けた前記端末IDによって示された携帯端末から該サーバが前記スクリーンショットを受けたときに、該スクリーンショットを前記クライアントに送り、前記1以上の携帯端末に対する前記コマンドを該サーバが受けたときに、該コマンドを前記1以上の第2の手段のうちの該サーバが受けた前記端末IDによって示された携帯端末に関連した第2の手段に送る第3の手段と
を備えた、サーバ。 - 前記1以上のHTMLファイルは、前記クライアントが解釈したときに、該クライアントに、あるプロトコルを用いて前記サーバとの双方向の接続を確立させる文字列を更に含み、前記サーバは、前記プロトコルを解釈し、前記接続を介して、前記端末ID、前記スクリーンショット及び前記コマンドは前記クライアントと前記サーバとの間で送受され、
前記サーバは、該サーバが受けた前記スクリーンショットをある符号化方式により変換する第4の手段を更に備え、前記符号化方式により変換された前記スクリーンショットは前記接続を介して送ることが可能である、請求項1に記載のサーバ。 - 前記サーバは、該サーバが前記端末IDを受けたときに、受けた前記端末IDが示す携帯端末にプログラムを送る第5の手段を更に備え、
前記1以上の携帯端末の各々は、前記表示手段に表示された情報に対応したデータが記憶された記憶手段を更に備え、
受けた前記端末IDが示す前記携帯端末に送られた前記プログラムは、該携帯端末に、前記記憶手段に記憶された前記データを、前記クライアントが表示可能な形式のデータに変換させ、前記スクリーンショットは、前記クライアントが表示可能な形式の前記データを含む、請求項1又は2に記載のサーバ。 - 前記スクリーンショットは前記表示手段の画面の画像を含み、
前記1以上のHTMLファイルが含む前記の文字列はHTML5に準拠したHTMLタグ及びJavaScript(登録商標)のうちの一方又は双方を含み、前記HTMLタグはJavaScript(登録商標)を含むファイルへのリンクのためのタグを含み、
前記プロトコルはWebSocketプロトコルを含み、
前記符号化方式はBase64を含み、
前記形式はPortable Network Graphics(PNG)形式及びJoint Photographic Experts Group(JPEG)形式のうちの一方又は双方を含む、請求項3に記載のサーバ。 - 請求項1~4の何れか一項に記載のサーバと、1以上の携帯端末とを含むシステム。
- クライアントからネットワークを介して1以上の携帯端末にアクセスするための方法であって、前記クライアントは前記ネットワークを介してサーバに接続され、前記サーバは前記1以上の携帯端末に接続され、前記1以上の携帯端末の各々は、情報を表示するための表示手段を備え、指示を受けたときにスクリーンショットを前記サーバに送り、前記スクリーンショットは、前記表示手段に表示された情報を表し、前記サーバは、第1の手段と、1以上の第2の手段と、第3の手段とを備え、前記1以上の第2の手段の各々は、前記1以上の携帯端末の各々に関連し、前記方法は、
前記第1の手段が、1以上のHTMLファイルを前記クライアントに送るステップであって、前記1以上のHTMLファイルは、前記クライアントが解釈したときに、該クライアントに、前記1以上の携帯端末のうちの1つを選択するための第1の領域を表示させる文字列と、選択された前記携帯端末を示す端末IDを前記サーバに送ることをさせる文字列と、前記スクリーンショットを受けたときに該スクリーンショットを表示させる文字列と、前記1以上の携帯端末への入力を受けるための第2の領域を表示させる文字列と、受けた前記入力を前記1以上の携帯端末に対するコマンドに変換させる文字列と、前記1以上の携帯端末に対する前記コマンドを前記サーバに送ることをさせる文字列とを含む、ステップと、
前記第3の手段が、前記1以上の携帯端末に対する前記コマンドを前記サーバが受けたときに、該コマンドを前記1以上の第2の手段のうちの該サーバが受けた前記端末IDによって示された携帯端末に関連した第2の手段に送るステップと、
前記第2の手段が、前記1以上の携帯端末に対する前記コマンドを受けたときに該コマンドを関連した携帯端末に送るステップと、
前記第2の手段が、前記指示を関連した前記携帯端末に送るステップと、
前記第3の手段が、前記サーバが受けた前記端末IDによって示された携帯端末から該サーバが前記スクリーンショットを受けたときに、該スクリーンショットを前記クライアントに送るステップと
を含む、方法。 - 前記1以上のHTMLファイルは、前記クライアントが解釈したときに、該クライアントに、あるプロトコルを用いて前記サーバとの双方向の接続を確立させる文字列を更に含み、前記サーバは、前記プロトコルを解釈し、前記接続を介して、前記端末ID、前記スクリーンショット及び前記コマンドは前記クライアントと前記サーバとの間で送受され、
前記サーバは第4の手段を更に備え、前記方法は、前記第4の手段が、該サーバが受けた前記スクリーンショットをある符号化方式により変換するステップを更に含み、前記符号化方式により変換された前記スクリーンショットは前記接続を介して送ることが可能である、請求項6に記載の方法。 - 前記サーバは第5の手段を更に備え、前記方法は、前記第5の手段が、該サーバが前記端末IDを受けたときに、受けた前記端末IDが示す携帯端末にプログラムを送るステップを更に含み、
前記1以上の携帯端末の各々は、前記表示手段に表示された情報に対応したデータが記憶された記憶手段を更に備え、
受けた前記端末IDが示す前記携帯端末に送られた前記プログラムは、該携帯端末に、前記記憶手段に記憶された前記データを、前記クライアントが表示可能な形式のデータに変換させ、前記スクリーンショットは、前記クライアントが表示可能な形式の前記データを含む、請求項6又は7に記載の方法。 - 前記スクリーンショットは前記表示手段の画面の画像を含み、
前記1以上のHTMLファイルが含む前記の文字列はHTML5に準拠したHTMLタグ及びJavaScript(登録商標)のうちの一方又は双方を含み、前記HTMLタグはJavaScript(登録商標)を含むファイルへのリンクのためのタグを含み、
前記プロトコルはWebSocketプロトコルを含み、
前記符号化方式はBase64を含み、
前記形式はPortable Network Graphics(PNG)形式及びJoint Photographic Experts Group(JPEG)形式のうちの一方又は双方を含む、請求項8に記載の方法。 - コンピュータを、クライアントからネットワークを介して1以上の携帯端末にアクセスするためのサーバとして機能させるプログラムであって、前記クライアントは前記ネットワークを介して前記コンピュータに接続され、前記コンピュータは前記1以上の携帯端末に接続され、前記1以上の携帯端末の各々は、情報を表示するための表示手段を備え、指示を受けたときにスクリーンショットを前記コンピュータに送り、前記スクリーンショットは、前記表示手段に表示された情報を表し、前記プログラムは、前記コンピュータを、
1以上のHTMLファイルを前記クライアントに送る第1の手段であって、前記1以上のHTMLファイルは、前記クライアントが解釈したときに、該クライアントに、前記1以上の携帯端末のうちの1つを選択するための第1の領域を表示させる文字列と、選択された前記携帯端末を示す端末IDを前記コンピュータに送ることをさせる文字列と、前記スクリーンショットを受けたときに該スクリーンショットを表示させる文字列と、前記1以上の携帯端末への入力を受けるための第2の領域を表示させる文字列と、受けた前記入力を前記1以上の携帯端末に対するコマンドに変換させる文字列と、前記1以上の携帯端末に対する前記コマンドを前記コンピュータに送ることをさせる文字列とを含む、第1の手段と、
1以上の第2の手段であって、該1以上の第2の手段の各々は、前記1以上の携帯端末の各々に関連し、該1以上の第2の手段の各々は、前記指示を関連した携帯端末に送り、前記1以上の携帯端末に対する前記コマンドを受けたときに該コマンドを関連した前記携帯端末に送る、1以上の第2の手段と、
前記コンピュータが受けた前記端末IDによって示された携帯端末から該コンピュータが前記スクリーンショットを受けたときに、該スクリーンショットを前記クライアントに送り、前記1以上の携帯端末に対する前記コマンドを該コンピュータが受けたときに、該コマンドを前記1以上の第2の手段のうちの該コンピュータが受けた前記端末IDによって示された携帯端末に関連した第2の手段に送る第3の手段と
として機能させる、プログラム。 - 前記1以上のHTMLファイルは、前記クライアントが解釈したときに、該クライアントに、あるプロトコルを用いて前記コンピュータとの双方向の接続を確立させる文字列を更に含み、前記プログラムは、前記コンピュータに前記プロトコルを解釈させ、前記接続を介して、前記端末ID、前記スクリーンショット及び前記コマンドは前記クライアントと前記コンピュータとの間で送受され、
前記プログラムは、前記コンピュータを、該コンピュータが受けた前記スクリーンショットをある符号化方式により変換する第4の手段として更に機能させ、前記符号化方式により変換された前記スクリーンショットは前記接続を介して送ることが可能である、請求項10に記載のプログラム。 - 前記プログラムは、前記コンピュータを、該コンピュータが前記端末IDを受けたときに、受けた前記端末IDが示す携帯端末にプログラムを送る第5の手段として更に機能させ、
前記1以上の携帯端末の各々は、前記表示手段に表示された情報に対応したデータが記憶された記憶手段を更に備え、
受けた前記端末IDが示す前記携帯端末に送られた前記プログラムは、該携帯端末に、前記記憶手段に記憶された前記データを、前記クライアントが表示可能な形式のデータに変換させ、前記スクリーンショットは、前記クライアントが表示可能な形式の前記データを含む、請求項10又は11に記載のプログラム。 - 前記スクリーンショットは前記表示手段の画面の画像を含み、
前記1以上のHTMLファイルが含む前記の文字列はHTML5に準拠したHTMLタグ及びJavaScript(登録商標)のうちの一方又は双方を含み、前記HTMLタグはJavaScript(登録商標)を含むファイルへのリンクのためのタグを含み、
前記プロトコルはWebSocketプロトコルを含み、
前記符号化方式はBase64を含み、
前記形式はPortable Network Graphics(PNG)形式及びJoint Photographic Experts Group(JPEG)形式のうちの一方又は双方を含む、請求項12に記載のプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/078950 WO2013088534A1 (ja) | 2011-12-14 | 2011-12-14 | クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム |
JP2013549006A JP5959535B2 (ja) | 2011-12-14 | 2011-12-14 | クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/078950 WO2013088534A1 (ja) | 2011-12-14 | 2011-12-14 | クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013088534A1 true WO2013088534A1 (ja) | 2013-06-20 |
Family
ID=48612020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2011/078950 WO2013088534A1 (ja) | 2011-12-14 | 2011-12-14 | クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5959535B2 (ja) |
WO (1) | WO2013088534A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105431829A (zh) * | 2013-08-14 | 2016-03-23 | 傲立焜株式会社 | 应用程序测试系统以及应用程序测试方法 |
JP2016197329A (ja) * | 2015-04-03 | 2016-11-24 | 三菱電機株式会社 | 共有画面管理装置および共有画面管理プログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001359157A (ja) * | 2000-06-09 | 2001-12-26 | Casio Comput Co Ltd | 移動体通信システム、移動体通信端末の遠隔制御方法及びウェブサーバ装置 |
JP2002111893A (ja) * | 2000-07-26 | 2002-04-12 | Nec Corp | 遠隔操作システムとその遠隔操作方法、及び遠隔操作プログラムを記録した記録媒体 |
JP2005323093A (ja) * | 2004-05-07 | 2005-11-17 | Fujitsu Ltd | Webサーバを利用した遠隔操作制御プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020029259A1 (en) * | 2000-07-26 | 2002-03-07 | Nec Corporation | Remote operation system and remote operation method thereof |
-
2011
- 2011-12-14 JP JP2013549006A patent/JP5959535B2/ja not_active Expired - Fee Related
- 2011-12-14 WO PCT/JP2011/078950 patent/WO2013088534A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001359157A (ja) * | 2000-06-09 | 2001-12-26 | Casio Comput Co Ltd | 移動体通信システム、移動体通信端末の遠隔制御方法及びウェブサーバ装置 |
JP2002111893A (ja) * | 2000-07-26 | 2002-04-12 | Nec Corp | 遠隔操作システムとその遠隔操作方法、及び遠隔操作プログラムを記録した記録媒体 |
JP2005323093A (ja) * | 2004-05-07 | 2005-11-17 | Fujitsu Ltd | Webサーバを利用した遠隔操作制御プログラム |
Non-Patent Citations (1)
Title |
---|
HIDEHIKO OKADA ET AL.: "PC Remote Controller based on User Interface Transformation", JOURNAL OF HUMAN INTERFACE SOCIETY, vol. 4, no. 4, 25 November 2002 (2002-11-25), pages 235 - 244 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105431829A (zh) * | 2013-08-14 | 2016-03-23 | 傲立焜株式会社 | 应用程序测试系统以及应用程序测试方法 |
JP2016530628A (ja) * | 2013-08-14 | 2016-09-29 | オニコム株式会社 | アプリテストシステム及びアプリテスト方法 |
JP2016197329A (ja) * | 2015-04-03 | 2016-11-24 | 三菱電機株式会社 | 共有画面管理装置および共有画面管理プログラム |
Also Published As
Publication number | Publication date |
---|---|
JPWO2013088534A1 (ja) | 2015-04-27 |
JP5959535B2 (ja) | 2016-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10705942B1 (en) | Simulated testing of API | |
US10353718B2 (en) | Providing access to a remote application via a web client | |
US8949378B2 (en) | Method and system for providing a state model of an application program | |
US11635974B2 (en) | Providing a different configuration of added functionality for each of the stages of predeployment, deployment, and post deployment using a layer of abstraction | |
US20140082511A1 (en) | Method and system for emulating desktop software applications in a mobile communication network | |
US9384005B2 (en) | Systems and methods for dynamic configuration of client-side development environments through use of application servers | |
US9934007B2 (en) | Method for operating tool in working environment and machine using such method | |
WO2008106643A2 (en) | Forms conversion and deployment system for mobile devices | |
KR20110070982A (ko) | 리소스 지향 프로그램을 시각적으로 모델링, 디버깅 및 실행하는 대화형 디자인 환경 | |
CN108509207A (zh) | Web应用程序的跨系统安装 | |
US20140223414A1 (en) | Paige control for enterprise mobile applications | |
JP7280388B2 (ja) | カスタマイズされた人工知能生産ラインを実行する装置及び方法、機器及び媒体 | |
JP2008276690A (ja) | 開発システム、開発システムのサーバ、開発方法 | |
CN107426588B (zh) | 一种获取电视机配置信息方法、系统及存储装置 | |
JP6482204B2 (ja) | 情報処理端末、その制御方法及びプログラム | |
JP4626675B2 (ja) | 通信ネットワークを利用したファームウェアの提供方法、そのシステムおよびサービスサーバ | |
JP5507500B2 (ja) | デバッグシステム及びデバッグ方法 | |
JP5959535B2 (ja) | クライアントからネットワークを介して携帯端末にアクセスするためのサーバ、方法、及び、コンピュータを該サーバとして機能させるプログラム | |
JP2013210912A (ja) | データ処理装置、データ処理システム及びプログラム | |
JP5393242B2 (ja) | データ提供方法および中間サーバ装置 | |
US20160350083A1 (en) | Rapid mobile app generator | |
US9680967B2 (en) | Method of using application, gateway using the method, terminal using the method, and terminal system using the method | |
JP2007122691A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2019219818A (ja) | プログラム、情報処理装置、及び情報処理方法 | |
JP2013137687A (ja) | コンパイルレスなアプリケーション生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11877267 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2013549006 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 18/09/2014) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11877267 Country of ref document: EP Kind code of ref document: A1 |