GithubHelp home page GithubHelp logo

xmlangel / gamium Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dogu-team/gamium

0.0 0.0 0.0 177.22 MB

Multiple game engine sdk for scripting the behavior of game users

Home Page: https://gamium.dogutech.io/

License: MIT License

Shell 0.01% JavaScript 0.04% C++ 43.34% Python 13.31% C# 27.62% TypeScript 15.65% CMake 0.01% Dockerfile 0.02%

gamium's Introduction

Gamium

Gamium is an SDK that allows you to automate game test

Automation Demo by Gamium

Description

Gamium provides the ability to script the behavior of game users. Starting from a simple function of clicking on the UI, you can automate various cases and be free from repetitive manual tests.

Automation starts when the gamium client sends a network message to the gamium engine for the specified command. Users just need to put the gamium engine into the game build and send the specified message using the client sdk.

Philosophy

As various platforms emerge, the number of things to test is increasing. Accordingly, the mobile app automation framework is used universally, but in the case of games, there are many projects where tests are not yet automated.

We want to solve this problem and develop automation library with multi-engine support through the same interface. The interface we provide is inspired by Selenium and Playwright.

Support List

Engine

Engine Windows / macOS Android iOS Xbox PS4 / PS5 Switch
Unity Need testing Need testing Need testing
Unreal In progress In progress In progress Planned Planned Planned
Godot Planned Planned Planned Planned Planned Planned

Proprietary Engine

Language Support
C++ Planned
C# Planned

Client Language

Language Support
Typescript
Python
C# Planned

Getting Started

Please refer to the Get Started

Installation

npm

npm i gamium

pip

pip install gamium

Examples

You can look up the UI and then click and scroll,

await gamium.ui().click(By.path('/Canvas[1]/Login[1]/Panel[1]/GuestLoginBtn[1]'));

You can simulate input into the game,

await gamium.sendKey(KeyBy.unityKeyboard('Space'));

You can also call specific functions.

await gamium.executeRpc(RpcBy.method('Gamium.Private.CodebaseSample', 'CallParam1', 10));

Read Resources

Documentation

Contributing

Please, don't hesitate to file a question.

If you have problem, file an issue.
If you are interested in contributing directly to the code base, don't hesitate to Pull request.
But I'd really appreciate it if you could read the CONTRIBUTING.md before making your request.

License

Gamium is MIT licensed

gamium's People

Contributors

yowpark avatar oneofthezombies avatar lumyjuwon avatar ikalli avatar xmlangel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.