GithubHelp home page GithubHelp logo

anthrax3 / autobisect Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mozillasecurity/autobisect

0.0 0.0 0.0 9.96 MB

Automatic bisection of testcases for Firefox Browser and SpiderMonkey Shell

Python 100.00%

autobisect's Introduction

Autobisect

Autobisect is a python module that automates bisection of Mozilla Firefox and SpiderMonkey bugs.

Installation

To install after cloning the repository
pip install --user -e <autobisect_repo>

Usage

Firefox bug biesction supports the following arguments:

python -m autobisect firefox --help

positional arguments:
  testcase              Path to testcase

optional arguments:
  -h, --help            show this help message and exit
  --inbound             Download from mozilla-inbound
  --central             Download from mozilla-central (default)
  --release             Download from mozilla-release
  --beta                Download from mozilla-beta
  --esr                 Download from mozilla-esr52

boundary arguments (YYYY-MM-DD or SHA1 revision:
  --start START         Start revision (default: earliest available TC build)
  --end END             End revision (default: latest available TC build)

bisection arguments:
  --count COUNT         Number of times to evaluate testcase (per build)
  --find-fix            Indentify fix date
  --verify              Verify boundaries
  --config CONFIG       Path to optional config file

build arguments:
  --asan                Test asan builds
  --debug               Test debug builds
  --fuzzing             Test --enable-fuzzing builds
  --coverage            Test --coverage builds
  --32                  Test 32 bit version of browser on 64 bit system.

launcher arguments:
  --timeout TIMEOUT     Maximum iteration time in seconds (default: 60)
  --launch-timeout LAUNCH_TIMEOUT
                        Maximum launch time in seconds (default: 300)
  --abort-token ABORT_TOKEN
                        Scan the log for the given value and close browser on
                        detection. For example '-a ###!!! ASSERTION:' would be
                        used to detect soft assertions.
  --ext EXT             Path to fuzzPriv extension
  --prefs PREFS         Path to preference file
  --profile PROFILE     Path to profile directory
  --memory MEMORY       Process memory limit in MBs
  --gdb                 Use GDB
  --valgrind            Use valgrind
  --xvfb                Use xvfb (Linux only)

Bisecting a Firefox bug:

python -m autobisect firefox trigger.html --prefs prefs.js --asan --end 2017-11-14

By default, Autobisect will cache downloaded builds (up to 30GBs) to reduce bisection time. This behavior can be modified by supplying a custom configuration file in the following format:

[autobisect]
storage-path: /home/ubuntu/cached
persist: true
; size in MBs
persist-limit: 30000

autobisect's People

Contributors

choller avatar damz avatar fkzy avatar jruderman avatar jschwartzentruber avatar nth10sd avatar pyoor 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.