Question: How can we increase block.number on Ganache for testing purpose ?
If not possible do you know an alternative like passing X fake transactions to artificially increase block.number.

Or if we have to use a private chain: is it possible to change the time between blocks for faster testing ?

Best regards

Answer: 
In addition to goodvibration's answer, OpenZeppelin recently released their [`openzeppelin-test-helpers` package](https://github.com/OpenZeppelin/openzeppelin-test-helpers). This library contains all kinds of helpers for testing smart contracts, including methods to increase the block number or timestamp, such as:

```js
async time.advanceBlock()
async time.increase(duration)
async time.increaseTo(target)

```

I haven't used the library myself, but it sounds like it might be useful for you.
As Rosco Kalis's suggestion of `@openzeppelin/test-helpers`

```bash
npm install --save-dev @openzeppelin/test-helpers

```

My `Node.js` code for contract testing:

```js
const { time } = require("@openzeppelin/test-helpers");
require("@openzeppelin/test-helpers/configure")({
  provider: "http://localhost:7545",
});

async function main() {
  await time.advanceBlock();
  await myTimeRelatedContractMethodCall();
}
main()

```

Further reading : <https://docs.openzeppelin.com/test-helpers/0.5/api#time>