code: public static synchronized <T> T createNicePartialMockForAllMethodsExcept(Class<T> type, String... methodNames) {
          if (methodNames != null && methodNames.length == 0) {
              return createNiceMock(type);
          }
  
          return createNiceMock(type, WhiteboxImpl.getAllMethodExcept(type, methodNames));
      }
docs: A utility method that may be used to specify several methods that should
  <i>not</i> be nicely mocked in an easy manner (by just passing in the
  method names of the method you wish <i>not</i> to mock). Note that you
  cannot uniquely specify a method to exclude using this method if there
  are several methods with the same name in {@code type}. This method
  will mock ALL methods that doesn't match the supplied name(s) regardless
  of parameter types and signature. If this is not the case you should
  fall-back on using the {@link #createMock(Class, Method...)} method
  instead.
  
  @param <T>         The type of the mock.
  @param type        The type that'll be used to create a mock instance.
  @param methodNames The names of the methods that should be mocked. If
  {@code null}, then this method will have the same effect
  as just calling {@link #createMock(Class, Method...)} with the
  second parameter as {@code new Method[0]} (i.e. all
  methods in that class will be mocked).
  @return A mock object of type <T>.